java知识总结(工作一年半差不多两年了,感觉是时候总结一下java,文章内容为本人观点)
来源:互联网 发布:苹果电池修复软件 编辑:程序博客网 时间:2024/05/21 18:34
2017-2-18
进程和线程
一,进程线程基本概念
进程:一个正在执行的应用程序。
线程:程序中的一个代码流。
关系:一个线程只能属于一个进程,但是一个进程可以有多个线程,但是只有一个主线程。
多线程:可以同时并发执行多个任务。最大限度的降低cpu的闲置时间。不利:线程越多,占用内存越多;需要cpu时间跟踪管理;必须解决资源共享的问题;线程太多会导致程序很难控制,可能出现喝多bug;
二,创建线程的两种方法
①继承Thread类
public class MyThread extends Tread{
public void run(){}
}
调用:MyThread thread=new MyThread ();
thread.start();
②实现Runable
public class MyThread implements Runnable{
public void run(){}
}
调用:MyThread mt=new MyThread ();
Tread t=new Tread(mt);
t.start();}
三,Tread类常用方法
①常用构造方法:
Tread()创建一个新的线程;
Tread(String name)创建一个制定名称的线程;
Tread(Runnable target)利用Runnable对象创建一个新的线程,启东市调用该对象的run方法;
Tread(Runnable target,String name)利用Runnable对象创建一个新的线程,并指定线程的名称。
void start();启动线程;
final void setPriority(Int newPriority)设置线程的优先级;
final void getPriority()返回线程的优先级;
final void join();等待线程终止;
②常用
static Tread CurrentTread();返回对当前线程的兑现的引用;
static void sleep(long millis);让当前执行的线程休眠,休眠时间由millis(毫秒)决定;
static void yield();暂停当前正在执行的线程,转而执行其他的线程;
③与后台线程相关的方法
final setDaemon(boolean on)将该线程设置为后台线程;
final boolean isDaemon();判断该线程是否为后台线程;
四,线程同步
①实现同步需要两步操作:把竞争访问的资源标识为private;使用synchronized同步方法或者代码块;
五,线程通讯
①wait();notify();notifyAll();
②sleep()和wait()区别:sleep()是Tread的静态方法,wait()是、object类的方法;sleep()让本线程进入休眠状态。wait()让线程进入等待;sleep()不会释放同步锁;wait()释放同步锁;
③解决死锁:让线程持有独有的资源;尽量不要使用嵌套synchronized’
六,线程状态转换
- java知识总结(工作一年半差不多两年了,感觉是时候总结一下java,文章内容为本人观点)
- java知识总结(工作一年半差不多两年了,感觉是时候总结一下java,文章内容为本人观点)
- java的异常处理。。。java知识总结(工作一年半差不多两年了,感觉是时候总结一下java,文章内容为本人观点)
- java知识总结(工作一年半差不多两年了,感觉是时候总结一下java,文章内容为本人观点)
- 集合框架。。。。java知识总结(工作一年半差不多两年了,感觉是时候总结一下java,文章内容为本人观点)
- 毕业两年,梦想撞见现实,知识到用的时候方知少了,总结一下了,找找距离
- 是时候要好好总结一下了。。。
- 是时候该总结一下了
- 工作1年半了,总结一下
- 工作一年的java技术员总结
- 是时候总结总结了
- 是时候复习一下Java基础了(一)
- 是时候复习一下Java基础了(二)
- 是时候复习一下Java基础了(三)
- 是该总结一下了
- JAVA 基础知识总结了一下基础知识。
- Java 两年总结
- c# 工作两年了感觉自己已经是一个废人了
- Omi教程-组件通讯
- 【计算机网络】数据链路层理解
- vim的配置
- 1181
- (15.1.21.1)Camera--Picture Structure
- java知识总结(工作一年半差不多两年了,感觉是时候总结一下java,文章内容为本人观点)
- 蓝桥杯B组C语言-猜数字
- Problem on Group Trip UVALive - 7219
- linux task_struct
- Tornado(二)异步web
- spring-web
- 微信小程序学习(二)
- Android开发:Handler的使用(三)
- (15.1.21.2)Camera--Type