今天在做项目的时候,遇到一个问题,两个一模一样的demo,运行出来的效果却一点也不一样,找了半天,就是有一行代码不同,一个是thread.start();一个是thread.run();和我预计的一样,就是这里的问题,我的项目是有子线程执行耗时操作的。如果世界在主线程中调用子线程的run()方法时,主界面有假死的现象。

归根结底,如果我们直接调用子线程的run()方法,其方法还是运行在主线程中,代码在程序中是顺序执行的,所以不会有解决耗时操作的问题。所以不能直接调用线程的run()方法,只有子线程开始了,才会有异步的效果。当thread.start()方法执行了以后,子线程才会执行run()方法,这样的效果和在主线程中直接调用run()方法的效果是截然不同的。

最新文章

  1. CCProxy二级代理上网设置
  2. angularJS——ng-bind指令与插值的区别
  3. AD域的安装
  4. full_case & parallel_case
  5. html5 和css3的小知识!
  6. 数据库连接类oracleHelper
  7. ll 详解
  8. unique mapped reads
  9. IOS架构师之路:我对IOS架构的点点认识(大纲)
  10. Deep Learning(深度学习)学习笔记整理系列之(三)
  11. 写你自己struts1框架
  12. Windows系统前端常用PS快捷键:
  13. JDK及Tomcat集成到MyEclipse
  14. JS-NaN的数据类型
  15. chkconfig: command not found
  16. sort-桶排序
  17. Redis源码笔记-初步
  18. final阶段140字评论
  19. BadUSB测试记录
  20. hiho# 1394最小路径覆盖 网络流拆点

热门文章

  1. 第8.20节 Python中限制动态定义实例属性的白名单:__slots__
  2. 第3章 Python的数据类型目录
  3. PyQt(Python+Qt)学习随笔:Qt Designer中部件mimimumSize和maximumSize的含义
  4. APP软件系统测试
  5. js中的(function(){})()立即执行
  6. tcp/ip原理/三次握手/四次挥手
  7. js--数组的map()方法的使用
  8. 快用Django REST framework写写API吧
  9. mysql中FILE权限
  10. 多任务-python实现-协程(2.1.11)