Java多线程之胡编烂记
文章平均质量分 70
mengyalizuopeng
这个作者很懒,什么都没留下…
展开
-
多线程二,Java多线程thread和runnable区别简介
先上被写烂了的卖车票的例子: public class ChooseThreadOrRunnable extends Thread { private String name; private int count = 5; public ChooseThreadOrRunnable(String name) { this.name = name; }原创 2016-09-01 15:10:46 · 290 阅读 · 0 评论 -
多线程六------从任务中产生返回值-Callable接口
Runnable是执行工作的独立任务,但是它不返回任何值,如果希望任务完成后返回一个值。那么可以实现Callable接口而不是Runnable接口,Callable是具有类型参数的泛型,它的类型参数是call()而不是run()。并且必须使用ExecutorService.submit()提交任务 public class CallableBase implements Callable{原创 2016-09-02 14:38:49 · 284 阅读 · 0 评论 -
多线程一 -------多线程介绍及简单实现
1.多线程的基本实现。 1.0 进程和线程 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位,简单说,一个进程至少包含一个线程。 1.1 线程实现方法,继承thread /* * 继承 thread 其实就是实现Runnable接口 */ public class Exte原创 2016-09-01 14:11:51 · 460 阅读 · 0 评论 -
多线程三-------------线程中常用的函数
1. sleep() 1.1 线程睡眠:Thread.sleep(long millis)方法,使线程转到阻塞状态。millis参数设定睡眠的时间,以毫秒为单位。当睡眠结束后,就转为就绪(Runnable)状态。当前线程(即调用该方法的线程)暂停执行一段时间,让其他线程有机会继续执行,但它并不释放对象锁。也就是说如果有synchronized同步快,其他线程仍然不能访问共享数据。注意该原创 2016-09-07 10:49:56 · 836 阅读 · 0 评论 -
多线程四----------线程同步
为什么要使用线程同步: 当多个线程同时操作一个可共享的资源变量时(如数据的增删改查),将会导致数据不准确,相互之间产生冲突,因此加入同步锁以避免在该线程没有完成操作之前,被其他线程的调用. 证了该变量的唯一性和准确性。 什么时候使用同步: 如果正在写一个变量,他可能接下来将被另一个线程读取,或者正在读取的一个上一次已经被另一个线程写过的变量,那么必须使用同步,并且,读写线程都必须原创 2016-09-08 10:54:19 · 335 阅读 · 0 评论 -
多线程五---------线程池 Executor 管理线程
1. Executor 管理线程 CachedThreadPool /*ExecutorService exe = Executors.newCachedThreadPool(); exe.execute(new ExtendsThreadBase("A")); exe.execute(new ExtendsThreadBase("B"));原创 2016-09-02 14:08:47 · 269 阅读 · 0 评论 -
多线程四.二-------线程同步重入锁
在JavaSE5.0中新增了一个java.util.concurrent包来支持同步。 ReentrantLock类是可重入、互斥、实现了Lock接口的锁, 它与使用synchronized方法和块具有相同的基本行为和语义,并且扩展了其能力 ReenreantLock类的常用方法有: ReentrantLock() : 创建一个ReentrantLock实例 lock()原创 2017-03-09 11:55:26 · 487 阅读 · 0 评论 -
多线程四.三-------不同锁的功能和使用
ReentrantReadWriteLock //大量线程读取文件数据,少量线程修改数据; ReentrantReadWriteLock lock = new ReentrantReadWriteLock(); Lock write= lock.writeLock(); Lock read = lock.readLock(); private voi原创 2017-11-03 13:35:03 · 243 阅读 · 0 评论