在别人写的一个项目中,我在很多地方都遇到过这样的代码,我仍然不明白为什么有人会写这样的代码。
考虑下面的代码(这段代码在 C# 中,但我认为它也适用于许多语言——可能只是语法不同,或者类名和执行方式不同——你明白了。):
Thread thread;
thread = new Thread(new ThreadStart(method));
thread.Start();
thread.Join();
据我了解,这段代码意味着启动一个线程并运行method
,然后这个线程等待新启动的线程完成,而不做任何其他事情。
如果是这样,为什么我不直接调用该方法,即
method()
谁能向我解释我的理解是否正确?第一个代码片段在功能上与第二个相同吗?