producer-consumer

    3热度

    1回答

    我想创建一个消费者生产者程序,其中消费者线程生产者数字填充数组,并且消费者线程打印填充数组的数字。目前,我可以填充数组并在消费者/生产者线程之间来回传递数据,但我希望生产者创建数字的速度比消费者处理速度要快。 目前,一些生产每1秒,以及一些被消耗一个被消耗之前每3两个数字应该产生的,但我的制片线程处于等待,直到它产生的号码被消耗。 我已经试过周围的互斥锁和解锁,也是信号感动,但我还没有得到它的工作

    0热度

    1回答

    我们正在写邮件同步系统,我们使用RabbitMQ。每个生产者推送邮件ID,然后消费者获得ID并将邮件插入数据库。在我们有100个消费者(例如)和生产者会生成id太快的情况下,每个消费者都会得到id,并且会使用api来获取邮件,因此这将成为对api并发请求限制的例外。 我们限制每个生产者的消费者(例如,如果最多3个消费者将获得一个生产者的ID,那么接下来的3个将从另一个生产者接收,等等)?

    -1热度

    1回答

    我已经分配了一门课程来为使用单个生产者,单个消费者和循环缓冲区的消费者/生产者问题实施解决方案。这应该用C语言编写。 不幸的是,我们没有提供任何学习资料,并且在某种程度上意味着在演讲者没有帮助的情况下实现这一目标。 要求是如下: 要求:你被要求以实现用于使用A单生产者,单个消费者,和圆形有界缓冲器消费者/生产者问题(即,包含一个固定大小的溶液,例如整数值)。生产者和消费者都生成/消费无限数量的项目

    0热度

    1回答

    Java生产者 - 消费者程序使用线程&同步队列,程序被分成3个类但它不能运行。 Queue.java: public class Queue { static final int MAXQUEUE = 3; int[] queue = new int[MAXQUEUE]; int front, rear; public Queue(){ front = 0

    0热度

    1回答

    我编写了一个示例代码,将元素添加到activemq中,然后检索它们。我成功地添加了大约1000个元素,但在检索元素时,即使在队列中有很多元素时,代码也会在检索大约50-200个元素后卡住。 以下是我用于将元素添加到队列 @POST @Path("/addelementtoqueue") @Consumes(MediaType.APPLICATION_FORM_URLENCODED) publ

    0热度

    1回答

    我已经实施了一个解决方案,使用pthreads和信号量在C中的生产者/消费者问题。 我的主线程是生产者,我启动N个消费者线程。 我的代码是: typedef struct { int buf[BUFSIZE]; /* shared var */ int in; /* buf[in%BUFSIZE] is the first empty slot */ int

    6热度

    3回答

    我正在使用producer/consumer pattern实现数据链接层。数据链路层有自己的线程和状态机,用于通过线路(以太网,RS-232 ...)传输数据链路协议。物理层的接口表示为System.IO.Stream。另一个线程将消息写入数据链接对象并从中读取消息。 数据链路对象具有空闲状态必须等待的四个条件之一: 一个字节被接收 消息是可从网络螺纹 保活定时器已过期 所有通信都被 我有困难的

    6热度

    4回答

    import java.util.LinkedList; import java.util.Queue; class Producer extends PubSub implements Runnable{ @Override public void run() { synchronized(queue){ if (queue.size() =

    1热度

    1回答

    这里是我的信号灯的理解: 如果你有一个在此称为SEM1信号,你有后的一个关键部分。然后一旦输入信号后的代码就会完全执行。所以,如果你有以下伪代码: sem_wait(sem1) //#CRITICAL SECTION //code 1 //code 2 sem_post(sem1) 然后两行代码1,代码2将没有任何停止正确执行?即使关键部分中有500行代码是正确

    0热度

    1回答

    我写了一个简单的消费,生产模式,以帮助我实现以下任务: 阅读从目录中的文件,该文件包含五十万元TSV(制表符分隔)文件。 将每个文件操作为一个数据结构并将其放入阻塞队列中。 使用消费者和查询数据库消费队列。 比较两个哈希映射,如果有差异,则将差异打印到文件。 当我运行该程序时,即使使用5个线程,我的CPU消耗突然增加到100%。这可能是因为我使用单个生产者来读取文件? 文件的例子(制表符分隔) C