线程池(java各种线程池设计、线程池原理) 多线程通信同步锁(各种锁、信号量、条件变量等) 多线程之间协作 [CountDownLatch\CyclicBarrier] CountDownLatch: 类似于一个计数器。单个线程可重入。调用awit()方法阻塞,等待计数器归0。由此可用于实现一个人 ...
分类:
编程语言 时间:
2019-06-07 00:54:10
阅读次数:
101
线程 线程是操作系统最小的运算调度单位,被包含在进程中,一个线程就是一个固定的 执行流程 线程和进程的关系 线程不能单独存在 必须存在于进程中, 进程是一个资源单位,其包含了运行程序所需的所有资源 线程才是真正的执行单位 没有线程,进程中的资源无法被利用起来,所以一个进程至少包含一个线程,称之为主线 ...
分类:
编程语言 时间:
2019-06-04 22:27:27
阅读次数:
158
复习1.守护进程2.互斥锁(解决数据错乱的方法)3.IPC(进程间通讯)4.生产者与消费者模型详解:1.守护进程 一个进程可以设为另一个进程的守护进程 特点:被守护的进程结束时,守护进程也会随之结束 本质:父进程交给子进程一个任务,然而父进程 先于子进程结束了,子进程的任务也就没有必要 继续执行了 ...
分类:
编程语言 时间:
2019-06-04 16:14:37
阅读次数:
157
写在前面 今天分享的是一位5年工作经验的Java工程师在帝都的面试经验总结,看看这些互联网公司都爱问些什么题,希望对大家的面试有指导意义。 从事Java开发也有5年经验了,4月初自己的开启面试经历之旅,前后20天左右,主面互联网公司,一二线大公司或者是融资中的创业公司都面试过,拿了一些offer,其 ...
分类:
编程语言 时间:
2019-05-28 19:59:30
阅读次数:
201
问题 (1)synchronized的特性? (2)synchronized的实现原理? (3)synchronized是否可重入? (4)synchronized是否是公平锁? (5)synchronized的优化? (6)synchronized的五种使用方式? 简介 synchronized关 ...
分类:
编程语言 时间:
2019-05-22 14:07:19
阅读次数:
110
[TOC] 4.显式锁 Lock 4.1 概念 内置锁 vs 显示锁 synchronize是java语言层面实现的锁,称为内置锁。使用方便代码简洁,而且在jdk新版本优化后,性能也得到了很大的提高。synchronize是一个可重入锁。而Lock是jdk提供开发者是用的一个显式锁。通过lock() ...
分类:
其他好文 时间:
2019-05-17 23:12:01
阅读次数:
223
注:lock是可重入锁 lock锁分为两类:公平锁和非公平锁。按照本人的理解,公平锁指的是在多个线程同时获取锁时,会按照该线程的请求先后顺序来决定哪个线程优先获取到锁(即:根据同步队列中的线程顺序来决定),非公平锁则是自由竞争,和线程的等待时间无关。 而且非公平锁可能出现一个线程连续获取锁的现象(原 ...
分类:
其他好文 时间:
2019-05-16 12:29:26
阅读次数:
592
1. 分布式锁介绍 什么是锁?在多线程(多进程)应用程序中,当需要访问到共同的资源时,尤其涉及到写操作的时候,如果不对资源访问做同步处理,会发生无法预料的情况。锁就是在程序中对资源访问做同步处理的,把异步变同步。java,数据库等都有锁的概念。 那么什么是分布式锁呢?程序开发直至今日,许多的项目,尤 ...
分类:
其他好文 时间:
2019-05-11 19:44:51
阅读次数:
153
synchronized关键字的性质 1.可重入:同一线程的外层函数获得锁之后,内层函数可直接再次获得该锁,好处:避免死锁,提升封装性 证明可重入粒度:1、同一个方法是可重入的 2、可重入不要求是同一个方法 3、可重入不要求是同一个类 可重入原理:加锁次数计数器 JVM负责跟踪对象被加锁的次数; 线 ...
分类:
其他好文 时间:
2019-05-03 18:12:19
阅读次数:
106
java中与锁有关的几个概念:可重入锁、读写锁、可中断所、公平锁 可重入锁 synchronized和ReentrantLock都属于可重入锁,当前加锁的程序调用了一个持有当前锁对象的子程序不会发生阻塞,代码如下 执行method1()方法,获取锁,然后又调用同步方法method2(),这个时候线程 ...
分类:
其他好文 时间:
2019-04-28 19:02:49
阅读次数:
162