在Linux环境下使用Ruby进行多线程编程,你可以使用Ruby的内置库Thread
require 'thread'
initialize
和run
方法:class MyThread < Thread
def initialize(name)
super()
@name = name
end
def run
puts "#{@name} is running."
end
end
threads = []
threads << MyThread.new("Thread 1")
threads << MyThread.new("Thread 2")
threads << MyThread.new("Thread 3")
threads.each(&:join)
将以上代码放入一个名为multithreading_example.rb
的文件中,然后在终端中运行ruby multithreading_example.rb
,你将看到以下输出:
Thread 1 is running.
Thread 2 is running.
Thread 3 is running.
注意:由于全局解释器锁(GIL)的存在,Ruby的多线程编程在CPU密集型任务中可能无法实现真正的并行执行。在这种情况下,你可以考虑使用多进程库(如Process
库)来实现并行执行。