首页 行业资讯 宠物日常 宠物养护 宠物健康 宠物故事

...new Thread(new Program().myThreadMethod); 这里为什么需要new呢...

发布网友

我来回答

3个回答

热心网友

new Thread(new Program().myThreadMethod);
这个是因为Thread()构造函数里需要传一个实例的操作,就是说一个类的对象里面的方法
new Program() --> Program类的实例,一个对象
知道委托把,传方法的时候都不写‘()’,即new Program().myThreadMethod
这样就把一个对象的方法传到Thread thread2 这个线程里去了,就能用 thread2 这个对象控制new Program() 对象的操作(方法)在CPU中的处理了
如果不把类创建成内存对象,是没法操作的~

热心网友

这里就是告诉多线程的类在多线程开启的时候自动调用的方法。。。
而现在这个方法所依赖的类没有实例化。。
所以NEW了一下

热心网友

这个涉及到线程了
线程的启动有这么几步
1.创建一个线程,那么创建线程一般情况下是以下方式
Thread thread2 = new Thread(参数);
2.线程启动,也就是thread2.Start();
这里Thread thread2 = new Thread(new Program().myThreadMethod); 其实创建线程可以分解成两步
1.Program pr = new Program();
2。Thread thread2 = new Thread(pr.myThreadMethod);
不知道这么说明不明白?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com