![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
高并发/多线程
高并发多线程
易雪寒
永远做更好的自己!
展开
-
JAVA并发编程:LOCK(锁)
今天看了并发实践这本书的ReentantLock这章,感觉对ReentantLock还是不够熟悉,有许多疑问,所有在网上找了很多文章看了一下,总体说的不够详细,重点和焦点问题没有谈到,但这篇文章相当不错,说的很全面,主要的重点都说到了,所有在这里转载了这篇文章,注意红色字体。 在上一篇文章中我们讲到了如何使用关键字synchronized来实现同步访问。本文我们继续来探讨这个问题,从Java5之后,在java.util.concurrent.locks包下提供了另外一种方式来实现同步访问,那就是Lo.转载 2020-07-21 01:58:53 · 297 阅读 · 0 评论 -
你应该要理解的java并发关键字volatile
提高java的并发编程,就不得不提volatile关键字,不管是在面试还是实际开发中 volatile都是一个应该掌握的技能。他的重要性不言而喻。因此也有必要学好。一、为什么要用到volatile关键字?使用一个新技术的原因肯定是当前存在了很多问题,在Java多线程的开发中有三种特性:原子性、可见性和有序性。我们可以在这里简单的说一下:1、原子性(Atomicity)原子性是指在一个操作中就是cpu不可以在中途暂停然后再调度,既不被中断操作,要不执行完成,要不就不执行,就好比你做一件事,要么转载 2020-07-04 13:09:24 · 129 阅读 · 0 评论 -
Java多线程对CountDownLatch的使用实例
阅读目录介绍 实现原理 实例1 实例2(和join的相似处) 实例3(和join的不同处)回到顶部介绍CountDownLatch是一个同步辅助类,它允许一个或多个线程一直等待直到其他线程执行完毕才开始执行。用给定的计数初始化CountDownLatch,其含义是要被等待执行完的线程个数。每次调用CountDown(),计数减1主程序执行到await()函数会阻塞...转载 2020-04-23 01:26:08 · 268 阅读 · 0 评论 -
Java多线程学习之sleep()和wait()详解及实例(四)
sleep()方法介绍sleep()使当前线程进入停滞状态(阻塞当前线程),让出CPU的使用、目的是不让当前线程独自霸占该进程所获的CPU资源,以留一定时间给其他线程执行的机会。 sleep() 方法的作用是在指定的毫秒数内让当前“正在执行的线程”休眠(暂停执行)。这个“正在执行的线程”是指 this.currentThread() 返回的线程。 Thread.sleep(long mil...原创 2020-03-02 01:09:12 · 774 阅读 · 0 评论 -
Java多线程学习之售卖车票问题(三)
一、继承Thread来创建线程package com.xu.chap2;/** * 目的:实现火车站卖票系统(第一种创建线程的方式) * *///第一种方式直接继承Thread来创建线程class T1 extends Thread{ //加static的原因是:每次new一个对象出来,该对象就会有一个tickets属性,这样的话就相当于卖2倍票数,当然错误 ...原创 2020-02-26 19:12:31 · 595 阅读 · 0 评论 -
Java多线程学习之线程数据安全(二)
1. 数据不共享的情况在探讨数据共享的话题前,先来看看数据不共享的情况,每一个线程里面的数据都是独立的,就像下面的例子,3个线程,每一个线程自己对自己的数据进行扣减,直到0为止代码demo:public class TestThread { public static void main(String[] args) { MyThread myThread_...原创 2020-02-26 15:24:59 · 173 阅读 · 0 评论 -
Java多线程学习之线程创建四种方式(一)
1、继承Thread类重写run方法:使用继承方式的好处是,在run()方法内获取当前线程直接使用this就可以了,无须使用Thread.currentThread()方法;不好的地方是Java不支持多继承,如果继承了Thread类,那么就不能再继承其他类。另外任务与代码没有分离,当多个线程执行一样的任务时需要多份任务代码。package com.xu.chap1;public cl...原创 2020-02-22 21:08:47 · 101 阅读 · 0 评论 -
Java中的ReentrantLock和synchronized两种锁定机制的对比
原文:http://www.ibm.com/developerworks/cn/java/j-jtp10264/index.html多线程和并发性并不是什么新内容,但是 Java 语言设计中的创新之一就是,它是第一个直接把跨平台线程模型和正规的内存模型集成到语言中的主流语言。核心类库包含一个 Thread 类,可以用它来构建、启动和操纵线程,Java 语言包括了跨线程传达并发性约束的构转载 2017-12-15 21:03:10 · 148 阅读 · 0 评论