Serviceを読んで理解し、同意したものとみなします。スタック・オーバーフローはプログラマーとプログラミングに熱心な人のためのQ&Aサイトです。1,609件1オープンソースを見るとforkしていないものもあったように思います。forkするメリットとデメリットを教えていただけると助かります。個の銅バッジ1別に必須ではありません。用途に応じて使いわけましょう。(両方だと無駄に長くなりそうなので......)。票6サーバ側でforkする意図ですが、一般的には非同期を実現する為に使います。HTTPサーバを処理する場合listenしてacceptしてacceptしたソケットからヘッダを読み取りbodyを読み取るとなりますが3以降は並列で動いて欲しい物です。そこでacceptしたらすぐにforkもしくはスレッドを起動してそちらに処理を預けます。する事で直ぐに次のacceptを処理する事が出来ます。これをしないと3や4をしている間、他のリクエストを処理出来なくなりパフォーマンスが悪くなります。forkはリソースを多く必要とする(デメリット)為、スレッドを使ったり予めforkさせておいたプロセスにソケットを渡す事でオーバヘッドを減らす方法(prefork)もあります。逆にforkするとacceptしたプロセスとは別の実行権限で処理出来るというメリットもあります。クライアントでforkする意図もだいたいの場合、HTTP処理をしている間に他の処理をやりたいという目的で行います。しないで作られているものが多いと(個人的に)思います。するメリットプロセスが独立します。親だけでなく同じプロセスを親に持つ兄弟たちとも独立します。することにメリットがあります。する理由がほとんどありません。プログラムの用途・目的に応じて使いわけるだけのことです。|回答スタック・オーバーフローに参加してくれて、ありがとうございます!質問の回答を共有してください。回答を説明し、自分の検討結果も共有してください。意見を述べること(意見を述べるなら、参照リソース、自分の経験で意見をサポートしてください)さらにサポートが必要な場合このヘルプを参考してください。“回答を投稿”をクリックすることで利用規約、プライバシーポリシー、及びクッキーポリシーに同意したものとみなされます。タグが付いた他の質問を参照するか、自分で質問をする。公開5周年をお祝いしましょう!🌸コメントで回答する理由を教えてください関連する質問61回のソケットのsend()やssl_write()で送るバイト数の適切サイズ0libevのev_asyncとは何に使用するものですか?10forkしたプロセスから共有するファイルディスクリプタへの書き込みについて0LinuxでのC#の開発環境について教えてください3与えられた仮想アドレスからどのプロセスで使っているかを調べるKernelAPIについて教えてください。質問のフィードこのRSSフィードを購読するには、このURLをコピーしてRSSリーダーに貼り付けてください。