手机
当前位置:查字典教程网 >脚本专栏 >ruby专题 >ruby线程实现生产者消费者问题示例(队列Queue实现线程同步)
ruby线程实现生产者消费者问题示例(队列Queue实现线程同步)
摘要:Ruby线程实现经典的生产者消费者问题,用ruby中的Queue类实现线程同步问题。复制代码代码如下:require"thread"puts...

Ruby线程实现经典的生产者消费者问题,用ruby中的Queue类实现线程同步问题。

复制代码 代码如下:

require "thread"

puts "ProAndCon"

queue = Queue.new #用队列Queue实现线程同步

producer = Thread.new do

10.times do |i|

sleep rand(i) # 让线程睡眠一段时间

queue << i

puts "#{i} produced"

end

end

consumer = Thread.new do

10.times do |i|

value = queue.pop

sleep rand(i/2)

puts "consumed #{value}"

end

end

consumer.join #等待consumer线程的输出完成再关闭此进程

【ruby线程实现生产者消费者问题示例(队列Queue实现线程同步)】相关文章:

在Ruby中创建和使用哈希的教程

Ruby实现生产者和消费者代码分享

Ruby中处理时间的一些基本操作

Ruby中的Proc类及Proc的类方法Proc.new的使用解析

ruby实现石头剪刀布游戏示例

Ruby多线程编程初步入门

Ruby中使用mechanize批量下载校内网相册照片

Ruby中使用连续体Continuation实现生成器

ruby实现github第三方认证

ruby元编程实际使用实例

精品推荐
分类导航