Wesley13 Wesley13
3年前
java 多线程总结篇4——锁机制
在开发Java多线程应用程序中,各个线程之间由于要共享资源,必须用到锁机制。Java提供了多种多线程锁机制的实现方式,常见的有synchronized、ReentrantLock、Semaphore、AtomicInteger等。每种机制都有优缺点与各自的适用场景,必须熟练掌握他们的特点才能在Java多线程应用开发时得心应手。——《Java锁机制详解》(
Wesley13 Wesley13
3年前
java多线程和异步回调
   在实际开发过程中遇到的多线程情况不多,但是在生产环境中多线程是最基本的情况,java面试时也会考到,所以看看多线程的知识还是很有必要的。 Thread,Runnable,Callable,Future,FutureTask,Executors这是java常见的接口和类。  thread.run():线程具体要执行的代码,thread.jo
菜园前端 菜园前端
2年前
什么是 JavaScript 单线程?
原文链接:什么是JavaScript单线程?单线程是指当存在多个任务时候,所有任务都必须排队并且按照顺序执行。这里就会有同学问为什么不是多线程?假设是多线程,同时执行一些任务,某个任务进行了该dom的修改,而某个任务进行了该dom的删除,这样就会出现一些问
Wesley13 Wesley13
3年前
java并发面试常识之ArrayBlockingQueue
       ArrayBlockingQueue是常用的线程集合,在线程池中也常常被当做任务队列来使用。使用频率特别高。他是维护的是一个循环队列(基于数组实现),循环结构在数据结构中比较常见,但是在源码实现中还是比较少见的。线程安全的实现     线程安全队列,基本是离不开锁的。ArrayBlockingQueue使用的是Reen
Wesley13 Wesley13
3年前
4、jstack查看线程栈信息
1、介绍利用jps、top、jstack命令找到进程中耗时最大的线程,以及线程状态等等,同时最后还可以显示出死锁的线程查找:FoundoneJavaleveldeadlock即可1、jps获得进程号!(https://oscimg.oschina.net/oscnet/da00a309fa6
Stella981 Stella981
3年前
JUC学习之Exchanger
直接看代码吧package exchange;import java.util.concurrent.Exchanger;/  Exchanger让两个线程可以互换信息。  例子中服务生线程往空的杯子里倒水,顾客线程从装满水的杯子里喝水,  然后通过Exchanger
Stella981 Stella981
3年前
IntentService用法小结
废话少说,先总结:1\.Service默认是在主线程(UI线程)运行的。2\.IntentService可以为我们开启一个独立的线程来工作。注:IntentService必须开启一个无参的构造方法。流程:构造方法onCreateonStartCommandonHandlerIntentonDestory
Wesley13 Wesley13
3年前
JDK中线程池满后再放入队列
  JDK中ThreadPoolExecutor有coreSize、maxSize,只有当线程数到coreSize且队列满后才会增加线程数到maxSize.  想要达到的效果是线程数到maxSize后再放入队列。方案一  覆写ThreadPoolExecutor的execute()  _List1_pub
Wesley13 Wesley13
3年前
Java多线程消费者、生产者的基本思路
多线程主要考察的就是线程的同步控制  生产者消费者的思路就是,当一个线程执行时让另一个线程挂起就行了ThreadOne、ThreadTwo同时运行,添加一个变量在一个公共类(下边的Function类)中,例如:当变量为true,ThreadOne执行ThreadTwo挂起;当变量为false,ThreadOne挂起ThreadTw
Wesley13 Wesley13
3年前
Java多线程并发编程一览笔录
知识体系图:!(https://static.oschina.net/uploads/space/2017/0122/170830_4rOH_155593.png)1、线程是什么?线程是进程中独立运行的子任务。2、创建线程的方式方式一:将类声明为Thread的子