多线程初探
2016-04-04 17:13
197 查看
多线程初探
一、线程与进程区别
线程是cpu最小执行单元,一个进程可以包括多个线程;例如:正在做word报告,这个时候发现拼写错误,做报告这整个事件就是一个进程,其中执行拼写检查等就是一个个线程。二、实现线程两种方式
继承Thread类实现Runnable接口
Thread类是Runnable接口子类
两者区别实现接口可以实现资源共享 接口没有单继承局限 扩展性更好,程序更健壮
Thread类中run方法具体实现是调的传进来的run接口的run方法,见源码:
三、线程生命周期
创建就绪
运行
阻塞
消亡
四、线程常见几种使用方法区别
sleep 线程休眠 不释放锁 优先级低的有执行机会wait 线程等待 释放锁
yield 使当前线程到可执行状态 同等优先级线程才有执行机会
join join的线程执行完毕后再执行当前线程
interrupt 中断线程操作 并不能真正打断 慎用!
相关文章推荐
- 使用HttpURLConnection代替HttpClient
- Qt5布局管理(二)——QDockWidget停靠窗口类
- iOS开发之瀑布流
- 从设计模式说起JAVA I/O流
- HDU 2546 01背包问题
- load、save方法、spark sql的几种数据源
- php判断是否为json格式的方法
- Cookie
- 消除类游戏
- [转]基于display:table的CSS布局
- 全面理解Javascript闭包和闭包的几种写法及用途
- Android中的5种数据存储方式
- 获取系统信息
- 正确处理浏览器在下载文件时HTTP头的编码问题(Content-Disposition)
- Android:WebView用法(Js交互)
- 数组3——返回二维数组中最大联通子数组的和
- php安全模式
- 关于Untiy中数值传递的问题
- tab选项卡(解决问题 i总是最后一个)
- PTA 数列求和加强版