ruby线程

使用ruby线程

require 'net/http'

pages = %w{http://www.rubycentral.com http://slashdot.org http://www.google.com}
threads = []

for page_to_fetch in pages
	threads << Thread.new(page_to_fetch) do |url|
		puts "Fetching: #{url} thread:#{Thread.current}"
		res = Net::HTTP.get_response(URI(url))
		puts "Got #{url} #{res.message}"
	end
end

threads.each{|thr| thr.join}

 ruby "D:\testCodes\rubytest\thread.rb"

 

Fetching: http://www.rubycentral.com thread:#<Thread:0x1ab8cc0>

Fetching: http://www.google.com thread:#<Thread:0x1ab8bb8>

Fetching: http://slashdot.org thread:#<Thread:0x1ab8c18>

Got http://www.rubycentral.com OK

Got http://www.google.com Found

Got http://slashdot.org OK

 

 

count = 0
threads = []
10.times do |i|
	threads[i] = Thread.new do 
		sleep(rand(0.1))
		Thread.current["mycount"] = count
		count += 1
	end
end
threads.each{ |t| t.join; print t["mycount"],", "}
puts "count = #{count}"

 ruby "D:\testCodes\rubytest\thread2.rb"

 

3, 0, 4, 8, 6, 9, 1, 5, 2, 7, count = 10

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值