Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Ruby3.x】Thread::new()メソッドの使い方

newメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

newメソッドは、新しいスレッドを作成し、そのスレッド内で指定された処理を実行するメソッドです。スレッドとは、プログラムの実行を独立した複数の流れに分割し、それぞれを並行して処理するための仕組みです。これにより、例えば時間のかかる重い処理をバックグラウンドで実行しながら、メインのプログラムはユーザーインターフェースの操作を受け付けるなど、アプリケーションの応答性を維持し、効率的に動作させることが可能になります。

Thread.new メソッドは、引数として渡されたブロック内のコードを、メインの実行とは異なる新しいスレッド上で実行します。このブロック内の処理が完了すると、そのスレッドは自動的に終了します。このメソッドの戻り値は、作成された新しいThreadオブジェクトです。このThreadオブジェクトを利用することで、作成したスレッドの状態を監視したり、スレッドが終了するのを待ったりといった操作を行うことができます。

複数の処理を同時に進める必要がある場合に非常に有用で、プログラム全体のパフォーマンス向上や、より複雑なタスクの並列実行を実現するために重要な役割を果たします。例えば、複数のネットワーク通信を並行して行ったり、大量のデータを同時に処理したりする際などに活用されます。

構文(syntax)

1Thread.new do
2  # 新しいスレッドで実行したい処理をここに記述します
3end

引数(parameters)

*rest

  • *rest: スレッドで実行されるブロック(Procオブジェクトまたはブロック)と、それに渡される引数。

戻り値(return)

Thread

新しいスレッドオブジェクトが生成されて返されます。このスレッドオブジェクトは、後で start メソッドなどを呼び出すことで実行を開始できます。

関連コンテンツ

関連プログラミング言語