Java并发编程
Sunshine-松
努力奋斗的小码农
展开
-
[java多线程][java] java多线程拼接字符串
前言: 看到一个java多线程拼接字符串的题,所以就来写一下。 题目描述 Java多线程 时间限制:C/C++语言 1000MS;其他语言 3000MS 内存限制:C/C++语言 65536KB;其他语言 589824KB 题目描述: 设计三个线程,三个线程并行执行,要求分别在控制台输入数据后面拼接"_A","_B","_C",并且需要保证线程1,线程2,线程3按顺序执行,即线程1执行完成后,再执...原创 2020-03-07 10:26:41 · 1233 阅读 · 0 评论 -
[java 多线程] wait()和sleep()方法
前言: 最近在做一套题的时候,遇到了这个知识点,所以准备详细整理一下。 区别 sleep方法是Thread类的静态方法、wait()是Object超类的成员方法。 sleep方法导致了程序暂停执行指定的时间,让出CPU给其他线程,但是它的监控状态依然保持着,当指定的时间到了又会地洞恢复运行状态。在调用sleep方法的过程中,线程不会释放对象锁。 而当调用wait方法的时候,线程会自动释放对象锁,...原创 2020-01-29 22:24:43 · 311 阅读 · 0 评论 -
[java 多线程] synchronized详解
前言: 想着整理一下sycchronized关键字的知识点,所以这一片来详细说一下。 关键字 synchronized是Java语言中的关键字,当它用来修饰一个方法或者一个代码块的时候,可以保证同一时刻最有只有一个线程执行该段代码。 代码块 当两个并发线程访问同一个对象Object中的这个synchronized同步代码块的时候,一个时间内,只能有一个线程得到执行。另一个线程必须等待当前线程执行...原创 2020-01-29 21:12:41 · 224 阅读 · 0 评论 -
[java并发编程] AtomicInteger类的使用
前言: AtomicInteger在多线程程序中使用比较多,为什么要使用这个AtomicInteger呢,下面我们就来介绍一下。 AtomicInteger AtomicInteger是一个提供原子操作的Integer类,通过线程安全的方式操作加减。 AtomicInteger提供原子操作来进行Integer的使用,因此十分适合高并发情况下的使用。 源码 public class AtomicIn...原创 2020-01-19 21:33:06 · 210 阅读 · 0 评论 -
[java并发编程] ThreadLocal详解
前言: 我们在多线程编程的时候,会使用到共享变量,为了保证多个线程对共享变量的安全访问,通常会使用synchronizedl来保证同一时刻只有一个线程对共享变量进行操作。在这种情况下,就可以将类变量放到ThreadLocal类型的对象中,使变量在每个线程中都有独立拷贝,不会出现一个线程读取变量而被另一个线程修改的现象。 ThreadLocal ThreadLocal是JDK底层提供的一个解决多线程...原创 2020-01-19 16:24:40 · 257 阅读 · 0 评论 -
[java多线程] java并发编程之BlockingQueue
前言: 多线程在我们实际开发中使用比较多,因为最近也在使用BlockingQueue,所以也准备在这里总结一下,方便以后自己的查找。 BlockingQueue BlockingQueue是Concurrent包中的,很好的解决了多线程中,如何高效安全"传输"数据的问题。我们可以通过这些高效并且线程安全的队列类,为我们搭建高质量的多线程程序。 BlockingQueue即阻塞队列,他就是一个队列,...原创 2020-01-19 14:38:35 · 259 阅读 · 0 评论