JAVA系列(五)之多线程

这是我本人第六篇文章,不足之处,多多指教.1097685985@qq.com

每日一语 无论什么工具都有自己的应用场景,而我们需要合理使用它们.

关键字

线程 进程 程序  线程生命周期 线程创建方式 同步,异步 锁 线程池 等待与通知

多线程

线程,进程,程序.

线程的生命周期

线程的创建

Thread类Runnable接口

开发的关键性工作在于编写线程run(),建立线程实例;

难点在于线程的互斥与同步.

互斥

当线程间有共享代码(共享变量)时,且都对共享变量做修改.

解决方法:

某个线程在使用共享变量时,别的线程暂时等待,等待正在使用共享变量的线程使用结束。等到前一个线程使用结束后,才让等待使用共享变量的其他线程中的某一个使用它, 而别的线程继续等待。如能保证它们是逐个使用共享变量,再多的线程使用共享变量也不会产生混乱。

多线程互斥使用共享资源的程序段,在操作系统中称为临界段。临界段是一种加锁的机制,与多线程共享资源有关。临界段的作用是在任何时刻一个共享资源只能供-一个线程使用.

在Java语言中,使用关键字synchronized定义临界段,能对共享对象的操作上锁。

同步

当线程A使用到某个对象,而此对象又需要线程B修改后才能符合本线程的需要,这时线程A就要等待线程B完成修改工作.

Java提供三个方法wait(),notify(),notifyAll();

临界段 类方法,实例方法,一个方法中的代码块;

注意死锁的发生即循环等待;

还有lock的使用

线程池的使用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值