1.线程
也称为轻量级进程,每个线程有自己的堆栈、程序计数器、局部变量。与进程相比,进程中的线程之间隔离程度要小
2.Java实现
①implements Runnable
②extends Thread
一般推荐①
3.sleep()、yield()
sleep()方法对当前线程操作,指定以毫秒为单位的线程最小休眠时间,除非线程因中断提早恢复执行,否则不会在这段时间前恢复执行。线程可调用另一线程的interrupt()方法,向暂停的线程发出InterruptedException,变相唤醒暂停线程。
yield()方法使同优先级的线程获得执行机会,如果没有同优先级的可运行线程,yield()什么都不做
sleep()会给低优先级线程运行机会,yield()只给同优先级线程执行机会
4.join()
当前线程与该线程合并
5.临界资源问题
①互斥锁 synchronized
②死锁
③wait()、notify()
wait和sleep区别:wait会释放对象锁,sleep不会
时间: 2024-10-10 15:24:51