国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Ruby > 正文

Ruby中用線程實現(xiàn)經(jīng)典的生產(chǎn)者消費者問題代碼實例

2020-10-29 19:42:21
字體:
供稿:網(wǎng)友

示例代碼:

復制代碼 代碼如下:

require "thread"
puts "ProAndCon"
  
queue = Queue.new    #用隊列Queue實現(xiàn)線程同步 
  
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線程的輸出完成再關閉此進程

運行結(jié)果:

復制代碼 代碼如下:

ProAndCon
produced
produced
consumed 0
produced
produced
consumed 1
consumed 2
consumed 3
produced
consumed 4
produced
consumed 5

美化的代碼圖:

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 浪卡子县| 浙江省| 塘沽区| 肇源县| 内黄县| 邮箱| 台州市| 策勒县| 河津市| 浮梁县| 凤山县| 德昌县| 龙泉市| 黔西县| 华宁县| 博罗县| 潞城市| 皋兰县| 郎溪县| 阜宁县| 化德县| 仙游县| 凤庆县| 塔河县| 大田县| 额尔古纳市| 渝中区| 甘南县| 阿巴嘎旗| 泰来县| 两当县| 错那县| 岳阳市| 定边县| 梧州市| 台中市| 定襄县| 察隅县| 洞口县| 揭阳市| 秭归县|