无线程同步:存储数据: 1 public class Storage { 2 int data; 3 4 public int getData() { 5 return data; 6 } 7 8 public void setData(int ...
                            
                            
                                分类:
编程语言   时间:
2014-08-19 18:49:25   
                                阅读次数:
258
                             
                         
                    
                        
                            
                            
                                背景:
     当今社会各种应用系统诸如商业、社交、搜索、浏览等像信息工厂一样不断的生产出各种信息,在大数据时代,我们面临如下几个挑战:
如何收集这些巨大的信息如何分析它       如何及时做到如上两点
     以上几个挑战形成了一个业务需求模型,即生产者生产(produce)各种信息,消费者消费(consume)(处理分析)这些信息,而在生产者与消费者之间,需要一个沟通两...
                            
                            
                                分类:
其他好文   时间:
2014-08-18 12:38:34   
                                阅读次数:
191
                             
                         
                    
                        
                            
                            
                                说明
Java中,线程之间的通信主要是由java.lang.Object类提供的wait、notify和notifyAll这3个方法来完成:
①对象的wait方法被调用后,线程进入对象的等待队列中,并释放对象锁,其它线程可以竞争使用此对象锁;sleep方法使得一个线程进入睡眠状态,但是线程所占有的资源并没有释放。
②当对象的notify方法被调用,该方法会从对象的等待队列中随机取出一个线...
                            
                            
                                分类:
编程语言   时间:
2014-08-13 13:05:56   
                                阅读次数:
270
                             
                         
                    
                        
                            
                            
                                package concurrency;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;public class Storage { private int capacity; ...
                            
                            
                                分类:
编程语言   时间:
2014-08-05 10:47:39   
                                阅读次数:
322
                             
                         
                    
                        
                            
                            
                                1、生产者与消费者问题的描述
一个或者多个生产者,一个或者多个消费者。生产者在一条生产线不停地生产产品,消费者们不停地消费产品,需要注意的是
这里的生产线属于临界资源(Critical Source).
当生产线的产品生产满之后,生产者不能再往生产线生产产品,当生产线为空时消费者不能往生产线消费产品。
生产线里面有两个方法,生产和消费,这两个方法都临界区(Criti...
                            
                            
                                分类:
其他好文   时间:
2014-08-03 18:12:45   
                                阅读次数:
282
                             
                         
                    
                        
                            
                            
                                publicclassPandC{
	publicstaticvoidmain(String[]args){
		newThread(newProducer(),"生产者").start();
		newThread(newConsumer(),"消费者").start();
	}
}
//通过单例模式保证资源唯一
classResource{
	privateStringname;
	privateintcount;
	privatebooleanflag=false;..
                            
                            
                                分类:
编程语言   时间:
2014-07-22 18:29:51   
                                阅读次数:
205
                             
                         
                    
                        
                            
                            
                                publicclassPandC{
publicstaticvoidmain(String[]args){
//		Producerp=newProducer();
//		Consumerc=newConsumer();
//		newThread(p,"生产者").start();
//		newThread(p,"生产者").start();
//		newThread(c,"消费者").start();
//		newThread(c,"消费者").start();
		ne..
                            
                            
                                分类:
编程语言   时间:
2014-07-22 18:29:11   
                                阅读次数:
223
                             
                         
                    
                        
                            
                            
                                package多线程;
publicclassPandC{
	publicstaticvoidmain(String[]args){
//		Producerp=newProducer();
//		Consumerc=newConsumer();
//		newThread(p,"生产者").start();
//		newThread(p,"生产者").start();
//		newThread(c,"消费者").start();
//		newThread(c,"消费..
                            
                            
                                分类:
编程语言   时间:
2014-07-22 18:29:02   
                                阅读次数:
227
                             
                         
                    
                        
                            
                            
                                package多线程;
importjava.util.concurrent.locks.Condition;
importjava.util.concurrent.locks.Lock;
importjava.util.concurrent.locks.ReentrantLock;
publicclassPandCnewLock{
		publicstaticvoidmain(String[]args){
//			Producerp=newProducer2();
//			Consumerc=..
                            
                            
                                分类:
编程语言   时间:
2014-07-22 18:21:02   
                                阅读次数:
288
                             
                         
                    
                        
                            
                            
                                1.程序框架分析:a)首先将mutex, condition, queue 封装成各自的类,方便对外提供接口函数,这里要注意 condition的封装,一个条件变量和一把锁是一起用的,因此在初始化 condition 对象的时候要用一个 mutex 对象去初始化,在pthread_cond_wait...
                            
                            
                                分类:
编程语言   时间:
2014-07-16 17:43:12   
                                阅读次数:
203