![]() |
Helloやアメリカ合衆国へようこそ! UNIXおよびLinuxフォーラム!訪問し、当社のグローバルコミュニティに参加いただきありがとうございます。
|
|
Googleのunix.com
|
|||||||
| 高レベルのプログラミング は、 C 、 C + +についての質問の投稿は、 Java 、 SQL 、および他のプログラミング言語です。 |
その他のUNIXおよびLinuxフォーラムトピックは参考にすること
|
||||
| スレッド | スレッドスターター | フォーラム | 返信 | 最後の投稿 |
| 地獄&数学 | ogoy | シェルプログラミングとスクリプティング | 5 | 2008年5月26日 10:58午後 |
| 地獄とSQLite | ogoy | シェルプログラミングとスクリプティング | 2 | 2008年5月21日 12:07午前 |
| rpmの地獄! | knmwt15000 | UNIXのダミー質問と回答のため | 7 | 2002年3月27日 06:06午前 |
| 負のUID / GIDのか! !私は日の意味は一体何が彼らを見ることができますか? ! | hellz | UNIXのダミー質問と回答のため | 2 | 2001年9月7日 03:18午後 |
![]() |
|
|
LinkBack | スレッドツール | このスレッドを検索 | スレッドを評価 | 表示モード |
|
|
|
||||
|
これは非常に共通の問題をフォークで観測された。
あなたは再びフォークに子プロセスを防ぐことがいくつかのフラグ変数を持つことができますが、親フォーク。 このような非常に原始コードsomthingされることがあります: - #含まれ<stdio.h> #含まれ<unistd.h> #含める<errno。時間> メインボイド( ) ( child1 、 child2 、 valが、 INTはif_child ; 文字メッセージ[ 1000 ] ; if_child \u003d 1 ; memset ( 、 'メッセージ\ 0 ' 、 strlen (メッセージ) ) ; printf ( " \ nParentプロセスID %であるエ\ Ñ " 、 getpid ( ) ) ; child1フォーク\u003d ( ) ; ( child1 \u003d\u003d -1 ) ( strcpy ( strerrorメッセージ(errno) ) ; ) その他の ( もし( child1 > 0 ) / *コマンドが成功した場合はフォーク子供pidをゼロ以上になります。 * / ( printf ( " \ nThe child1プロセスID %であるエ\ Ñ " 、 child1 ) ; if_child \u003d 0 ; / *フラグを設定する*分岐ここから子プロセスを防ぐために/ ) ) memset ( 、 'メッセージ\ 0 ' 、 strlen (メッセージ) ) ; ( if_child \u003d\u003d 0 ) ( フォークchild2 \u003d ( ) ; ( child2 \u003d\u003d -1 ) ( strcpy ( strerrorメッセージ(errno) ) ; ) printf ( " \ nThe child2プロセスID %であるエ\ Ñ " 、 child2 ) ; ( child2 )殺す; ) ( child1 )殺す; 出口( 0 ) ; ) |
|
||||
|
おかげでannibuddha (つまり、どのようにスペル? ) bb666の記事だろうと思っていた私はこの記事を見ていた...
として私は多くの子供を追加私は少しトラブルがあったが、親の開始時にIDを保存することにした: pidを\u003d getpid ( ) 後で私は私に対してだけでなく、すべての子供になると理解し、変数のチェックgetpid ( ) すなわち、子プロセスを停止して待って永遠に作成された後に作成するには: もし( pidを! \u003d getpid ( ) ) //これは、親ではない ( ; ; ) してまでは(願わくは)が死亡しているプロセスはそこに座っている 編集theultimatechufで最終; 2002年1月24日に 06:13午後.. |
|
||||
|
うん。それでいいしたりするだけので、子プロセスは何もメモリを無駄にしないためには停止信号を送信できる1つの方法だ。交換のためだけに( ; ; )
を殺す( getpid ( ) 、 SIGSTOP ) 。 ダンディーは、すべての罰金とはどのよう場合は、実際に何かを行うには、子プロセスをしたいのか?が発生する場合は送信を停止するか、かなりの子で働くことはできませんし、無限ループすることができますか? 実際に私に興味があるの部:子供で作業だが、かつては親フォーク再び分岐から防止します。 |
![]() |
| ブックマーク |
| スレッドツール | このスレッドを検索 |
| 表示モード | このスレッド |
|
|