上一页 1 ··· 4 5 6 7 8
摘要: 1.接口BlockingQueue 双缓冲队列,内部使用两条队列,允许两个线程同时向队列做操作,一个存储,一个取出。 在保证并发安全的同时,提高了队列的存取效率。 该队列继承于Queue,所以遵循先进先出原则(FIFO) 队列提供几种基本的操作: >添加元素(队尾) >移除元素(队头) >取出队头元 阅读全文
posted @ 2020-09-01 22:44 jamers 阅读(870) 评论(0) 推荐(1) 编辑
摘要: 线程池因传统多线程所带来的一些问题而产生。 多线程带来的问题: 1. 多线程运行时间,系统不断的启动和关闭新线程,会过度消耗系统资源。 2. 过度切换线程的危险,从而可能导致系统资源的崩溃。 应运而生的池化技术: 不直接创建具体的资源,而是创建一个池,在池里创建具体的资源,以前是把任务交给具体的资源 阅读全文
posted @ 2020-09-01 22:19 jamers 阅读(125) 评论(0) 推荐(1) 编辑
摘要: synchronized( ){ } synchronized 关键字是加锁的意思,用它来修饰方法就表示给该方法加了锁,从而达到线程同步的效果;用它来修饰代码块就表示给该代码块加了锁,从而达到线程同步的效果。 括号中的内容: 1.同一个对象:最低标准是this,或者是当前对象的实例变量 (切记不是局 阅读全文
posted @ 2020-08-31 23:32 jamers 阅读(200) 评论(0) 推荐(1) 编辑
摘要: 引发数据安全问题的条件 1.多线程并发 2.有共享数据 3.数据有修改行为 解决线程安全的方法:需要线程排序执行(不能并发) 这种机制就是线程同步机制 关键字为synchronized 线程同步就会牺牲一部分效率。 线程同步: 异步编程模型:线程t1和线程t2,各执行各的,t1不管t2,t2不管t1 阅读全文
posted @ 2020-08-31 23:12 jamers 阅读(254) 评论(0) 推荐(1) 编辑
上一页 1 ··· 4 5 6 7 8