⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 02 - doing two things at once with threads.rb

📁 O Reilly Ruby Cookbook source code
💻 RB
字号:
x = 0Thread.new do   while x < 5    x -= 1    puts "DEC: I decremented x to #{x}\n"  end  puts "DEC: x is too high; I give up!\n"endwhile x < 5  x += 3  puts "INC: I incremented x to #{x}\n"end# DEC: I decremented x to -1# DEC: I decremented x to -2# DEC: I decremented x to -3# DEC: I decremented x to -4# INC: I incremented x to -1# DEC: I decremented x to -2# INC: I incremented x to 1# DEC: I decremented x to 0# INC: I incremented x to 3# DEC: I decremented x to 2# INC: I incremented x to 5# DEC: x is too high; I give up!x                                          # => 5#---#!/usr/bin/ruby -w# counter_thread.rbcounter = 0counter_thread = Thread.new do  1.upto(1000000) { counter += 1; }endcounter_thread.join unless ARGV[0]puts "The counter was able to count up to #{counter}."#---$ ./counter_thread.rbThe counter was able to count up to 1000000.$ ./counter_thread.rb dont_call_joinThe counter was able to count up to 172315.#---Thread.new { sleep 10 }Thread.new { x = 0; 10000000.times { x += 1 } }Thread.new { sleep 100 }Thread.list # => [#<Thread:0xb7d19ae0 sleep>, #<Thread:0xb7d24cec run>,#     #<Thread:0xb7d31cf8 sleep>, #<Thread:0xb7d68748 run>]#---

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -