class Producer implements Runnable
{
Q q;
public Producer(Q q)
{
this.q = q;
}
public void run()
{
int i = 0;
while(true)
{
if (i == 0)
{
q.name = "zhangsan";
try{Thread.sleep(1);}catch(Exception e){}
q.sex = "male";
}
else
{
q.name = "lisi";
q.sex = "female";
}
i = (i + 1)%2;
}
}
}
class Consumer implements Runnable
{
Q q;
public Consumer(Q q)
{
this.q = q;
}
public void run()
{
while(true)
{
System.out.println("name of q: " + q.name);
System.out.println("Gender of q: " + q.sex);
}
}
}
class Q
{
String name = "unknown";
String sex = "unknow";
}
class ThreadCommunation
{
public static void main(String[] args)
{
Q q = new Q();
Thread producer = new Producer(q);
producer.start();
Thread consumer = new Consumer(q);
consumer.start();
}
}
分享到:
相关推荐
线程同步中的典型事例生产者消费者问题 方便理解线程的各方面内容
a: 创建一个线程 ...h: problem1 生产者消费者问题 (1生产者 1消费者 1缓冲区) problem1 more 生产者消费者问题 (1生产者 2消费者 4缓冲区) problem2 读者与写着问题 I: 信号量 semaphore 解决线程同步问题
线程同步_生产者消费者问题 经典实现 线程同步_生产者消费者问题
编写一个“生产者-消费者”的多线程演示程序,两个生产者,一个消费者,可以存放产品的仓库容量为10,仓库用栈实现,并有同步功能,且能防止先消费后生产的情况。
本代码是用JAVA实现的生产者与消费者的问题,线程间的同步与互斥功能
操作系统 用多线程同步方法解决生产者-消费者问题 课设报告
通过互斥量、事件来解决生产者和消费者的问题,主要涉及的内容有多线程的创建,事件的创建,互斥量的创建,线程的同步。主要的函数有:CreateThread,CreateEvent,CreateMutex,WaitForMultipleObjects等。
基本满足操作系统课上要求,java实现的生产者消费者模型。
设计要求:(1)每个生产者和消费者对有界缓冲区进行操作后,即时显示有界缓冲区的全部内容,当前指针位置和生产者/消费者线程的标识符.(2)生产者和消费者各有两个以上.(3)多个生产者或多个消费者之间须有共享对缓冲区...
本实验要求设计在同一个进程地址...生产者线程生产物品时,若无空缓冲区可用,生产者线程必须等待消费者线程释放出一个空缓冲区;消费者线程消费物品时,若缓冲区为空,消费者线程将被阻塞,直到新的物品被生产出来。
java多线程实现生产者消费者关系,完成线程之间的同步。
用java多线程,实现生产者消费者同步和互斥的问题,操作系统中的经典问题
设计在同一个进程地址空间内执行...生产者线程生产物品时,若无空缓冲区可用,生产者线程必须等待消费者线程释放出一个空缓冲区;消费者线程消费物品时,若无满的缓冲区,消费者线程将被阻塞,直到新的物品被生产出来。
Java小程序:解决线程同步--生产者消费者问题,直观简单,容易理解,希望对初学者有帮助。
生产者消费者问题(信号量+mutex) 参考教材中的生产者消费者算法,创建5个进程,其中两个进程为生产者进程,3个进程为消费者进程。一个生产者进程试图不断地在一个缓冲中写入大写字母,另一个生产者进程试图不断地...
用多线程同步方法解决生产者-消费者问题(操作系统课设
多线程同步方法解决生产者-消费者问题 (Bounded - Buffer Problem) 内容:有界缓冲区内设有10个存储单元,放入/取出的数据项 设定为1~10这10个整形数。要求每个生产者和消费者对有界 缓冲区进行操作后,...
多线程生产者与消费者,,生产者和消费者的解答网络上有多种线程版本,但却没看到进程版本,所以我就来填补这一“空白”了。PS:使用进程版本的另一个重要原因是,想顺便复习下共享内存。 我们使用信号量来同步,用...
1、设计目的:通过研究Linux的进程同步机制和信号量,实现生产者消费者问题的并发控制。 2、说明:有界缓冲区内设有26个存储单元,放入取出的产品设定为26个大写英文字母。 3、设计要求: 1) 生产者与消费者均有二个...