线程的状态一共有5种,如下:
sleep 线程处于休眠状态,或者在等待IO
run 线程处于运行状态
aborting 线程被取消
false 线程正常终止
nil 线程被非正常终止
可以使用status来查看进程现在的状态
threadpass1=Thread.start do
puts"我是正在运行的\n"
end
s1=threadpass1.status
puts"我的状态是:"+s1.to_s
运行结果
我是正在运行的
我的状态是:run
thread1=Thread.new do
sleep 2
end
thread2=Thread.new do
if Thread.current==Thread.main
puts"当前线程是主线程"
end
end
num=Thread.list.size
puts"线程的数量是:#{num}"
if Thread.list.include?(Thread.main)
puts"现在运行的是主线程"
end
运行结果:
线程的数量是:3
现在运行的是主线程
<