当前位置:首页--java多线程

Java多线程同步Synchronized使用分析

 同步的概念: 同步分为 同步方法 和 同步块 两种方式。 锁定的内容分为 锁定类的某个特定实例 和 锁定类对象(类的所有实例) 变量分为 实例变量(不带static的变量) 和 类变量(带static的变量) 使用同步的原因 1. 在系统中对访类要使用多线程进行访问; 2. 在该类中有 类变量, 或者是 在类的方法中有访问 公共资源(如一个外部文件的读写)。 同步锁锁定的内容是什么? 无论你将Sy......

阅读全文

Java多线程系列--“JUC线程池”04之 线程池原理(三)

   转载请注明出处:http://www.cnblogs.com/skywang12345/p/3509960.html   本章介绍线程池的生命周期。在"Java多线程系列--“基础篇”01之 基本概念"中,我们介绍过,线程有5种状态:新建状态,就绪状态,运行状态,阻塞状态,死亡状态。线程池也有5种状态;然而,线程池不同于线程,线程池的5种状态是:Running, SHUTDOWN, STOP,......

阅读全文

Java多线程中的死锁问题

 Java程序基本都要涉及到多线程,而在多线程环境中不可避免的要遇到线程死锁的问题。Java不像数据库那么能够检测到死锁,然后进行处理,Java中的死锁问题,只能通过程序员自己写代码时避免引入死锁的可能性来解决。 1. Java中导致死锁的原因 Java中死锁最简单的情况是,一个线程T1持有锁L1并且申请获得锁L2,而另一个线程T2持有锁L2并且申请获得锁L1,因为默认的锁申请操作都是阻塞的,所以线......

阅读全文

Java Socket实现基于TCP和UDP多线程通信

 一.通过Socket实现TCP编程 1.1 TCP编程   TCP协议是面向连接,可靠的,有序的,以字节流的方式发送数据。基于TCP协议实现网络通信的类有客户端的Socket类和服务器端的ServerSocket类。 1.2 服务器端套路   1.创建ServerSocket对象,绑定监听端口。   2.通过accept()方法监听客户端请求。   3.连接建立后,通过输入流读取客户端发送的请求信......

阅读全文

Java多线程系列--“基础篇”07之 线程休眠

   概要 本章,会对Thread中sleep()方法进行介绍。涉及到的内容包括: 1. sleep()介绍 2. sleep()示例 3. sleep() 与 wait()的比较 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3479256.html   1. sleep()介绍 sleep() 定义在Thread.java中。 sleep() 的作用......

阅读全文

Java多线程同步问题:一个小Demo完全搞懂

 版权声明:本文出自汪磊的博客,转载请务必注明出处。 Java线程系列文章只是自己知识的总结梳理,都是最基础的玩意,已经掌握熟练的可以绕过。 一、一个简单的Demo引发的血案 关于线程同步问题我们从一个简单的Demo现象说起。Demo特别简单就是开启两个线程打印字符串信息。 OutPutStr类源码: 1 public class OutPutStr { 2 3 public void o......

阅读全文

Java多线程系列--“JUC原子类”04之 AtomicReference原子类

   概要 本章对AtomicReference引用类型的原子类进行介绍。内容包括: AtomicReference介绍和函数列表 AtomicReference源码分析(基于JDK1.7.0_40) AtomicReference示例 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3514623.html   AtomicReference介绍和函数列......

阅读全文

Java总结篇系列:Java多线程(一)

 多线程作为Java中很重要的一个知识点,在此还是有必要总结一下的。 一.线程的生命周期及五种基本状态 关于Java中线程的生命周期,首先看一下下面这张较为经典的图: 上图中基本上囊括了Java中多线程各重要知识点。掌握了上图中的各知识点,Java中的多线程也就基本上掌握了。主要包括: Java线程具有五中基本状态 新建状态(New):当线程对象对创建后,即进入了新建状态,如:Thread t = ......

阅读全文

Java多线程总结(一)多线程基础

   多线程是Java学习的非常重要的方面,是每个Java程序员必须掌握的基本技能。本文只是多线程细节、本质的总结,并无代码例子入门,不适合初学者理解。初学者学习多线程,建议一边看书、看博文,以便写代码尝试。   转载请注明出处——http://www.cnblogs.com/zrtqsk/p/3776328.html谢谢! 一、进程   进程是操作系统结构的基础;是一次程序的执行;是一个程序及其数......

阅读全文

Java多线程系列--“JUC集合”06之 ConcurrentSkipListSet

   概要 本章对Java.util.concurrent包中的ConcurrentSkipListSet类进行详细的介绍。内容包括: ConcurrentSkipListSet介绍 ConcurrentSkipListSet原理和数据结构 ConcurrentSkipListSet函数列表 ConcurrentSkipListSet源码(JDK1.7.0_40版本) ConcurrentSkipL......

阅读全文
1 2 3 4 下一页 尾页