java线程基础复习
2015-06-25 21:56
351 查看
好久没写博客啦,今天先把最近的知识更新一下 接下来慢慢更新前面落下没放上博客的。~
线程复习:
线程和进程的区别:
一个进程可以是一个独立的运行环境,可以被看作一个程序或者一个应用。多个线程可以共享一个进程资源。线程直接共享数据方便,开销小,进程通信开销打,进程消失,线程也随即消失,所以可以说,线程的生命周期<=进程的生命周期。
java中如何定义一个线程:
继承Thread类。
实现Runnable 接口。
线程的优先级:
进程的优先级默认都是5,可以自己设定优先级。最高为10 最小为1。
设置优先级方法
Thread t= new Thread(new Mytask2());
t.setPriority(10);
得到当前进程的名字和优先级
几个线程的方法
sleep:
一般情况使用sleep方法 让出cpu状态。
sleep有异常。sleep 静态方法,即使睡眠,也不释放资源锁。
sleep权限全都让 yield只让给权限比自己高的。
当线程执行到sleep之后,将转到阻塞状态 , 后转为就绪状态。yield执行之后。则转到就绪状态。
join:
当前运行的线程可以调用另一个线程的join方法,当前运行线程将转到阻塞状态,直至另一个线程结束,他才会恢复运行
两个线程操作一个资源 资源不能确定的的。
synchronized:
加上后 变成同步操作 所有函数括号里面的代码越少越好。两种:方法级别和代码块的,建议代码越少越好。大部分同步操作都是放在集合里的。
wait:
会释放资源。
当调用sleep,资源会被锁定,另一个线程无法操作这个资源,wait 是object方法,有异常。让当前的线程等待,并释放锁,另一个线程可操作资源。
并可通过notify()/notifyAll()方法唤醒等待的线程
线程分组操作:可以分组,
线程复习:
线程和进程的区别:
一个进程可以是一个独立的运行环境,可以被看作一个程序或者一个应用。多个线程可以共享一个进程资源。线程直接共享数据方便,开销小,进程通信开销打,进程消失,线程也随即消失,所以可以说,线程的生命周期<=进程的生命周期。
java中如何定义一个线程:
继承Thread类。
实现Runnable 接口。
线程的优先级:
进程的优先级默认都是5,可以自己设定优先级。最高为10 最小为1。
设置优先级方法
Thread t= new Thread(new Mytask2());
t.setPriority(10);
得到当前进程的名字和优先级
几个线程的方法
sleep:
一般情况使用sleep方法 让出cpu状态。
sleep有异常。sleep 静态方法,即使睡眠,也不释放资源锁。
sleep权限全都让 yield只让给权限比自己高的。
当线程执行到sleep之后,将转到阻塞状态 , 后转为就绪状态。yield执行之后。则转到就绪状态。
join:
当前运行的线程可以调用另一个线程的join方法,当前运行线程将转到阻塞状态,直至另一个线程结束,他才会恢复运行
两个线程操作一个资源 资源不能确定的的。
synchronized:
加上后 变成同步操作 所有函数括号里面的代码越少越好。两种:方法级别和代码块的,建议代码越少越好。大部分同步操作都是放在集合里的。
wait:
会释放资源。
当调用sleep,资源会被锁定,另一个线程无法操作这个资源,wait 是object方法,有异常。让当前的线程等待,并释放锁,另一个线程可操作资源。
并可通过notify()/notifyAll()方法唤醒等待的线程
线程分组操作:可以分组,
相关文章推荐
- JAVAC不是内部或外部命令
- struts2每次访问都会创建一个新的session
- eclipse使用Maven搭建web项目
- spring问题1
- java Thread线程run()和start()方法的区别
- Java - 使用 XSD 校验 XML
- Socket客户端与服务端
- Eclipse 代码提示功能失效问题解决
- JNI Kickstart 小结 02 :桥接至与 Java 无关的纯本地库
- adt Failed to create the Java Virtual Machine.
- 30. Socket下载时,服务器端出错: len=10240 count=115 len=10240 count=116 len=7168 count=last java.net.SocketExc
- Java-斐波那契数
- 27.NDK开发时, javah 包名.类名 出错
- 24.AIDL,在文件夹中重命名java文件为aidl文件后,Eclipse中无显示?
- JDK8的怪东西,这门语言不能优雅点吗?
- SpringMVC框架的搭建步骤-002
- Spring学习资料汇总
- Java观察者模式
- 调整eclipse字体大小?
- spring+mybatis基于 AOP实现业务日志管理