如果在thread.start和thread.join之间有上下文切换,是否有任何不良影响? 如果线程在连接之前完成执行,会发生什么?thread.start和thread.join之间的上下文swtich
0
A
回答
1
它确实取决于子线程正在为您做什么,但一般来说,如果主线程创建子进程,然后在该子线程结束时执行更多并发工作并且子进程将首先完成在最坏的情况下,有一个竞赛条件。这是当你在你的代码中发生了某些事情,这些事情取决于子线程正在工作,但是如果实际上取决于正在完成的工作,则不实现控制来停止主线程的继续。
最终,调用.join将导致即时返回,因为所有方法都会等待子线程完成执行。但是,请注意意外的比赛条件,他们可能是一个正确的噩梦调试!
0
如果线程已经完成执行,Join将立即返回。
相关问题
- 1. thread.start()和executor.submit(线程)之间的区别
- 2. BeginInvoke和Thread.Start之间的区别
- 3. Android thread.start()和runOnUiThread(thread);
- 4. cl_context&cl之间的区别::上下文
- 5. 上下文之间的春天交流
- 6. 线程之间的上下文切换
- 7. 调度程序和上下文切换器之间的区别?
- 8. 传递WCF上下文之间的IDispatchMessageInspector.AfterReceiveRequest和IClientMessageInspector.BeforeSendRequest
- 9. 维护请求之间的状态和数据上下文
- 10. 抽象代数和编程之间的上下文
- 11. outputLink和graphicImage之间的EL上下文路径评估差异
- 12. 信号量和上下文开关之间的相互作用
- 13. 上下文和线程在drawRect之间的问题
- 14. 在不同的GLSurfaceView之间共享GLES20上下文和纹理?
- 15. 垂直(在元素之上,之下和元素之间)分配空的空间
- 16. 在MVC WAR和Batch Jar之间共享Spring应用上下文
- 17. 服务器之间传输文件,无需下载和上传
- 18. 在服务器客户端之间上传和下载文件
- 19. Thread.Start()与ThreadPool.QueueUserWorkItem()
- 20. Thread.Start()vs BackgroundWorker
- 21. Javascript更改军事和上午/下午onclick之间的时间
- 22. 是什么在以下上下文指针和阵列之间的差异?
- 23. 文本上方和下方的空间
- 24. 的Python的Thread.join(时间)回不回
- 25. 在Android上的OpenGL上下文之间共享资源
- 26. JavaScript(Titanium)中的单个执行上下文和多个执行上下文之间的区别
- 27. 更长的数据上下文或上下文之外的事务之间的权衡?
- 28. Web应用上下文和服务上下文之间的双向依赖关系
- 29. 删除HTML文本框之上和之下的默认空格
- 30. RegEx - \ [和\]之间的文字