Ruby on Rails 入门之:(17) 初次接触ruby线程
来源:互联网 发布:黑莓priv淘宝靠谱么 编辑:程序博客网 时间:2024/05/16 00:59
第一次写一个ruby多线程程序。但是最初有点小问题
源码:
- i=1
- puts "hello thread"
- puts Time.new
- #round=5
- #while i<round
- # puts "the #{i}th round"
- # i=i+1
- #end
- thread1=Thread.start 10 do |value|
- while i<value
- puts "#{i}"
- i=i+1
- end
- end
- thread2=Thread.start do
- 10.times do |a|
- puts "the #{a+1} output"
- end
- end
然后运行程序没有线程的运行输出。刚开始以为成为写错了,后来发现是主线程执行完毕,开启的线程还没有来得及显示数据就被关闭掉了。所以这个时候得不到任何关于线程的输出。
想要得到正确的输出,必须让线程有足够的时间来运行输出。可以加上.join来等待线程完成。
- i=1
- puts "hello thread"
- puts Time.new
- #round=5
- #while i<round
- # puts "the #{i}th round"
- # i=i+1
- #end
- thread1=Thread.start 10 do |value|
- while i<value
- puts "#{i}"
- i=i+1
- end
- end
- thread1.join
- thread2=Thread.start do
- 10.times do |a|
- puts "the #{a+1} output"
- end
- end
- thread2.join
这个时候就可以得到线程的输出。
- hello thread
- 2012-07-28 12:51:12 +0800
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- the 1 output
- the 2 output
- the 3 output
- the 4 output
- the 5 output
- the 6 output
- the 7 output
- the 8 output
- the 9 output
- the 10 output
- Ruby on Rails 入门之:(17) 初次接触ruby线程
- Ruby on Rails 入门之:(19) ruby线程同步控制
- Ruby on Rails 入门之:(19) ruby线程同步控制
- 初次接触ruby线程
- ruby on rails 入门
- ruby on rails 入门
- Ruby on Rails 入门之:(18) ruby线程控制,线程同步
- Ruby on Rails 入门之:(20) ruby线程控制的join
- Ruby on Rails 入门之:(5) Ruby中基本数据类型
- Ruby on Rails 入门之:(8) Ruby中条件语句
- Ruby on Rails 入门之:(10) Ruby中的对象
- Ruby on Rails 入门之:(11) Ruby中的类方法
- Ruby on Rails 入门之:(14) Ruby中的继承
- Ruby on Rails 初次冲浪体验
- ruby on rails 入门笔记
- Ruby on Rails 入门 ----respond_to
- ruby on rails 入门注意事项
- Ruby on Rails 入门 ----respond_to
- iOS 5中的strong和weak关键字
- Nuget挂了的解决方法
- s3cfb.c的来源对比
- Android Matrix理论与应用详解
- 小宝,小宝,我爱你
- Ruby on Rails 入门之:(17) 初次接触ruby线程
- UML类图几种关系的总结
- VS2010中的自动化测试(2)——Web性能测试
- 构造函数中抛出的异常
- 记录mysql性能查询过程
- mp4box的安装和使用
- IT未来发展五大趋势
- Jquery css函数实现动态操纵DOM节点的样式
- dns域名解析过程分析