ruby线程操作(续)显示和停止线程

可以使用pass方法暂停线程,执行其他的线程:

threadpass1=Thread.start do 
	threadpass1.pass
	puts"我没希望了,看你的了,加油happy! \n"
end
Thread.new do
	puts"看我的吧,我一定会成功的,因为我是happy\n"
end
执行结果

看我的吧,我一定会成功的,因为我是happy

使用sleep方法能使进程进入休眠状态,待时间结束线程会sleep状态变为可执行状态,还可以使用wakeup唤醒处于休眠状态的进程

puts"开始时间是:"+Time.now.to_s
sleep 3
puts"暂停三秒后时间为"+Time.now.to_s
sleep 4
puts"暂停四秒后时间为"+Time.now.to_s
执行结果:

开始时间是:2015-11-03 20:00:03 -0400
暂停三秒后时间为2015-11-03 20:00:06 -0400
暂停四秒后时间为2015-11-03 20:00:10 -0400

使用kill和exit方法停止进程

i=1
threadkill1=Thread.new 10 do |value|
	while i<value
		puts"#{i}"
		i+=1
		if(i>5)
			Thread.kill threadkill1
		end
	end
end
threadexit1=Thread.new do
	10.times do |a|
		puts"第#{a+1}次比赛"
		if(a>4)
			Thread.exit
		end
	end
end
执行结果:

1
2
3
4
5
第1次比赛
第2次比赛
第3次比赛
第4次比赛
第5次比赛
第6次比赛





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值