スレッドがブロックされている場合は、このスレッドが同じプロセスまたはそのプロセス内の他のスレッドをブロックする必要がありますか?これは毎回起こっていますか?スレッドがブロックされたとき。同じプロセスまたはプロセス全体で別のスレッドがブロックされる可能性がありますか?
答えて
そうでない場合、デッドロックに対処する必要はありません。シナリオは、ブロックされたスレッドが別のスレッドが取得しようとする同期オブジェクトを取得したことです。ブロックされます。
さて、今質問があります。一般的には、はい。ブロッキング条件を解除するには、他のコードを実行する必要があります。明白でないケースは、スレッドがI/Oでブロックされている場合、ドライバでコードを実行するカーネルスレッドです。またはスレッドをスケジューラは、プロセッサが取得を待っているためにブロックされている場合や、無限のタイムアウトで待機している場合は、スレッドスケジューラ。
はい、これは、あるスレッドが別のスレッドが何かを行うのを待つ必要があるすべての同期操作で発生します。例えば、スレッドAがロックを保持していて、カーネル内で長いブロッキング操作を行った場合、別のスレッドBはロックを取得しようとするとブロックします。スレッドBは少なくともスレッドAのブロック操作が終了するまでブロックされます。極端な場合には
、お互いに待機しているスレッドはDeadlock
追加の明確化になります:互いに独立して、プロセスの実行中
スレッド。 1つのスレッドブロッキングが他のスレッドを必ずしもブロックする必要はありません。これは、スレッドが最初に使用される主な理由の1つです。
それが起こるかpossibility.iがあるかどうかお尋ねしたい場合は、私が間違っexpression..iが意味するdidntのスレッドがブロックされている、それはブロックも、プロセス内のすべてのスレッドが
いいえ、これは単に真実ではありません。デッドロックは、すでに投稿された回答に記載されている場合に発生します。あなたが*全く言うように自動的には起こらない*。 –
- 1. Nettyスレッドがブロックされています
- 2. Javaでは、同期化されたブロックでスレッドの切り替えが可能ですか?
- 3. スレッドがクラッシュした場合、スレッドやプロセスが改善されます。
- 4. ServerSocket.accept()でブロックされたスレッドのブロックを解除するには?
- 5. スレッド付きJavaサーブレットがブロックされていますか?
- 6. スレッドが無期限にブロックされました - Haskell - Acid State
- 7. これは問題ありませんか? (スレッド)同期化、スレッド=同期ブロック
- 8. Dispatcher.PushFrameスタイルのプロセスがWPFページでブロックされています。
- 9. 実行が非同期セクションにあるときにスレッドがブロックされた状態になる理由
- 10. Android Socketが同じプロセスまたは別のサーバーにある
- 11. 新しいフォームが作成されたら、プロセスまたはスレッドが手に入りますか?
- 12. ブロック分割されたスレッドでの非同期FBリクエスト
- 13. ディレクトリ内の画像ファイルを削除する(別のプロセスで使用される可能性があります)
- 14. フォームフィラーをブロックする可能性がありますか?
- 15. ソケットを閉じずにソケットでブロックされたスレッドを解放する方法はありますか?
- 16. execvを呼び出すとstdin to parentプロセスがブロックされる
- 17. スレッドが終了すると.Join()呼び出しがブロック解除されることはありません
- 18. 例外が他のスレッドで捕捉された後にスレッドが実行されたときにSIGABRTでプロセスが終了する
- 19. `try`ブロックまたは` catch`ブロックの中に `return`がある場合に` finally`ブロックが実行されますか?
- 20. Javaスレッドには独自のプロセスIDがありますか?
- 21. ブロック全体がナビゲーションバーに表示されていませんか?
- 22. インスタンスメソッドがインスタンス化スレッドとは別のスレッドで呼び出されました
- 23. 32ブロックの32スレッドはワープとしてスケジュールされますか?
- 24. CUDAブロックごとのスレッド、グリッドあたりのブロック数
- 25. エンティティがロードされてからエンティティが変更または削除された可能性があります
- 26. 2つのプロセスをリンクすると、1つのプロセスがクラッシュしたときにもう1つのプロセスもクラッシュする可能性がありますか?
- 27. プロセスが別のプロセスで使用されているため、プロセスはファイルにアクセスできません。
- 28. 別のオブジェクトが選択されているときにポップオーバーコントローラを閉じる可能性はありますか?
- 29. スレッド化されたSPARQL実装がありますか?
- 30. 長時間実行されるタスク、別のスレッドまたは別のプロセスで実行する必要がありますか?
言い訳:スレッドがあるときこのスレッドが同じプロセスまたはそのプロセス内の他のスレッドをブロックする必要があるかどうかは、毎回起こっていますか? – Dchris
@user:質問を編集してこの説明を含めることはできますか? – Karmastan
さて、更新されたポスト。 –