码迷,mamicode.com
首页 >  
搜索关键字:多线程 semaphore    ( 23262个结果
Java synchronized详解
Java synchronized详解第一篇:使用synchronized在编写一个类时,如果该类中的代码可能运行于多线程环境下,那么就要考虑同步的问题。在Java中内置了语言级的同步原语--synchronized,这也大大简化了Java中多线程同步的使用。我们首先编写一个非常简单的多线程的程序,...
分类:编程语言   时间:2014-05-01 22:27:03    阅读次数:735
线程:Semaphore实现信号灯
Semaphore是一个计数的信号量,可以维护当前访问自身的线程个数,并提供了同步机制。使用Semaphore可以控制同时访问资源的线程个数,例如实现一个文件允许的线程访问数。打个通俗的比喻,Semaphore实现的功能类似厕所有4个坑,假如有10个人上厕所,那么同时有多少个人去上厕所呢?同时只.....
分类:编程语言   时间:2014-05-01 18:41:21    阅读次数:353
多线程-5
#include #include //using namespace std; DWORD WINAPI Fun1Proc( LPVOID lpParameter // thread data ); DWORD WINAPI Fun2Proc( LPVOID lpParameter // thread data ); int index=0; int tickets=100;...
分类:编程语言   时间:2014-05-01 18:25:42    阅读次数:323
linux多线程示例
1 #include 2 #include 3 #include 4 #include 5 6 typedef void* (*fun)(void*); 7 8 fun fun1, fun2; 9 10 pthread_mutex_t pmu = PTHREAD_MUTEX_INITI...
分类:编程语言   时间:2014-05-01 06:36:02    阅读次数:427
Java多线程编程基础之线程对象
在进入java平台的线程对象之前,基于基础篇(一)的一些问题,我先插入两个基本概念。 [线程的并发与并行] 在单CPU系统中,系统调度在某一时刻只能让一个线程运行,虽然这种调试机制有多种形式(大多数是时间片轮巡为主),但无论如何,要通过不断切换需要运行的线程让其运行的方式就叫并发(concurr.....
分类:编程语言   时间:2014-05-01 06:09:22    阅读次数:459
String、StringBulider、StringBuffer 的区别
String 的大小是固定的,在进行+运算时会生成新的对象。 StringBulider和StringBuffer都是动态的,但是StringBulider不是线程安全的,而StringBuffer是线程安全的。 建议: 字符串不经常修改可以使用String 字符串经常修改且单线程使用,可以用StringBulider 字符串经常修改且多线程使用,推荐StringBuffer...
分类:其他好文   时间:2014-04-30 22:31:39    阅读次数:215
并发编程实践二:AbstractQueuedSynchronizer
AbstractQueuedSynchronizer,简称AQS,是java.util.concurrent包的synchronizer的基础框架,其它的synchronizer(包括Lock、Semaphore、CountDownLatch、FutureTask等)都是以它作为基础构建的,这篇文章我将对AQS的框架结构作出介绍,包括它对同步状态的管理,功能流程,等待队列的管理等,并涉及到一些实现...
分类:其他好文   时间:2014-04-30 22:12:38    阅读次数:421
多线程笔记
一,多线程概述 1. 进程和线程 计算机的核心是CPU,它承担了所有的计算任务.它就像一座工厂,时刻在运行.假定工厂的电力有限,一次只能给一个车间使用,也就是说,一个车间开工的时候,其他车间都必须停工,背后的含义就是,单个CPU一次只能运行一个任务.进程就好比工厂的车间,它代表CPU所能处理的单个任务,任一时刻,CPU总是运行一个进程,其他进程处于非运行状态.一个车间里,可以有很多工人,他们协...
分类:编程语言   时间:2014-04-29 13:43:20    阅读次数:276
多线程编程--异步转同步之CountDownLatch
多线程编程--异步转同步之CountDownLatch...
分类:编程语言   时间:2014-04-29 13:23:21    阅读次数:412
使用JVMTI获取Java多线程程序指令执行次序
在Java多线程程序中,由于线程调度,指令间的次序在每次运行时都可能不相同,有时候,我们需要得到指令次序,用来分析程序的行为。这样细粒度的底层行为用一般方法很难完成,我们需要借助 JVM Tool Interface,即JVMTI,来帮助我们获取Java虚拟机执行时的信息。本文先介绍编写JVMTI程序的基本框架,然后介绍如何使用JVMTI来获取多线程程序中指令之间的次序。...
分类:编程语言   时间:2014-04-29 13:11:22    阅读次数:892
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!