线程封闭:当访问共享的可变数据时,通常需要同步。一种避免同步的方式就是不共享数据。如果仅在单线程内访问数据,就不需要同步,这种技术称为线程封闭(thread confinement) 线程封闭技术一个常见的应用就是JDBC的Connection对象,JDBC规范并没有要求Connection对象必须 ...
分类:
编程语言 时间:
2018-05-22 22:11:56
阅读次数:
220
“线程同步”的含义 当一个进程启动了多个线程时,如果需要控制这些线程的推进顺序(比如A线程必须等待B和C线程执行完毕之后才能继续执行),则称这些线程需要进行“线程同步(thread synchronization)”。 线程同步的道理虽然简单,但却是给多线程开发带来复杂性的根源之一。当线程同步不好时 ...
分类:
编程语言 时间:
2018-05-21 16:22:25
阅读次数:
185
前言 在Java并发编程实战,会经常遇到多个线程访问同一个资源的情况,这个时候就需要维护数据的一致性,否则会出现各种数据错误,其中一种同步方式就是利用Synchronized关键字执行锁机制,锁机制是先给共享资源上锁,只有拿到锁的线程才可以访问共享资源,其他线程进入等待状态。下面将以实例代码讲解一下 ...
分类:
编程语言 时间:
2018-05-19 22:35:37
阅读次数:
409
一、队列queue队列queue多应用在多线程场景,多线程访问共享变量。对于多线程而言,访问共享变量时,队列queue的线程安全的。因为queue使用了一个线程锁(pthread.Lock()),以及三个条件变量(pthread.condition()),来保证了线程安全。总结:队列提供了一个安全可靠的共享数据使用方案。队列内置控制安全的几个参数,非用户使用名称作用self.mutex互斥锁任何获
分类:
编程语言 时间:
2018-05-18 01:19:14
阅读次数:
224
Samba匿名访问和身份验证及账户映射首先需要两台虚拟机并且两台虚拟机能够ping通1.安装samba包及查看配置文件路径2.过滤smb配置文件的注释文件,并再配置文件中添加share共享文件夹设置为所有人可访问。3.创建abc文件且提升最大权限4.关闭防火墙和开启smb服务及查看端口号(139smb协议和445cifs协议)5.输入需访问共享的虚拟机IP地址,打开share文件夹并创建222文本
分类:
其他好文 时间:
2018-05-16 22:29:04
阅读次数:
270
AQS全称为AbstractQueuedSynchronizer,是并发容器中的同步器,AQS是J.U.C的核心,它是抽象的队列式的同步器,AQS定义了一套多线程访问共享资源的同步器框架,许多同步类都依赖它,如ReentrantLock、Semaphore、CyclicBarrier、Reentra ...
分类:
其他好文 时间:
2018-05-12 17:28:00
阅读次数:
171
一,环境 idea 二.什么是线程安全问题,为什么会有线程安全问题 线程安全问题产生于多个线程同时访问共享资源(通常查询不会产生) 三.举例 假如我现在想讲一个数循化加一,最终增加到1000.但是需要用5个线程来加 结果: 代码显示:最多会增加到1000循环就会结束那么为什么会出现1001呢!! 由 ...
分类:
编程语言 时间:
2018-05-06 20:12:07
阅读次数:
182
samba文件共享及账户映射实验介绍:在虚拟机Linux系统上安装sanmba服务,并在另外一台虚拟机的win7系统上访问共享文件夹,主要分为:匿名访问、身份验证访问、以及添加白名单和为了保护服务器安全的账户映射功能。1、在Linux系统上安装samba服务2、修改samba服务的配置文件,在/etc/samba/smb.conf中进行修改,由于原文件中注释内容较多,故将源文件中的注释删除掉。3、
分类:
其他好文 时间:
2018-05-04 12:07:12
阅读次数:
117
今天配置项目,由于静态资源需要共享,创建了共享目录做静态资源,然后java静态路径引用一个软链接,访问4041.项目资源路径:total 12
drwxr-x--- 3 root root 4096 May 2 14:12 META-INF
drwxr-x---
分类:
编程语言 时间:
2018-05-02 19:06:25
阅读次数:
147
前面几篇中,我们谈论了synchronized、final以及voilate的用法和底层实现,都绕不开一个话题-Java内存模型(java memory model,简称JMM)。Java内存模型是保证线程安全的基础,主要描述了程序中全序的同步动作在不同线程访问共享全局变量时所体现的原子性、可见性和 ...
分类:
编程语言 时间:
2018-04-30 20:01:15
阅读次数:
244