java多线程,Java多线程编程

Java多线程编程什么是线程?
指我们程序当中的一条执行路径,或者一个代码执行的顺序控制流。
什么是多线程
再一个应用程序当中,有多个线程同时运行。
进程和线程的区别?
进程是有独立地址空间的,线程是共享内存地址空间并共享一个进程的。
进程间的调用涉及的开销比线程间通信多。
线程间的切换成本比进程间的切换成本低。
使用线程 关键字:Thread 只需要继承并重写他的run方法。
怎么调用?直接调用run方法会报错吗?
直接调用run方法不会报错,但是直接调用run方法就失去了线程的意义,必须调用该类的start方法。
使用接口类创建线程 关键字:Runnable
怎么使用?
实现该接口并重写他的run方法,调用的时候也必须调用他的start方法。
当线程执行起来,谁先执行时靠线品决定的。(优先级)
怎么样理解多线程单线程的区别?
多线程: main→→→子线程对象→→→

Start
┗→run();→→→
单线程: main→→→子对象━run━→run();→→→
线程的运行状态:新建(产生Thread对象的时候)

就绪(stait)

运行→中断(阻塞:out.flush();---sleep—wait---yield---I/O)┐


死亡
线程优先级
通过setProperty(int i)
MAX_PRIORITY : 级别为10级 最高
MIN_PRIORITY: 级别为5级 默认
NORM_PRIORITY: 级别为1 最低
优先级只是抢占CPU的机滤转高,并不一定抢得过。
同步锁:每次只能有同一线程对它进行操作。关键字:Synchronized
怎么使用?
我们可以用Synchrinized关键字来修饰方法,这个方法将变成同步方法。(资源身上的)
同步块:这样灵活性增大了。
能且只能一次(NEW)
23种设计模式的其中一种
单例:
单态:
Tags:  多线程编程 java多线程

延伸阅读

最新评论

发表评论