タグ付けされた質問 「concurrent-programming」

8
Javaにミューテックスはありますか?
JavaのMutexオブジェクトまたはそれを作成する方法はありますか?1つの許可で初期化されたSemaphoreオブジェクトが役に立たないので、私は尋ねています。このケースを考えてみましょう: try { semaphore.acquire(); //do stuff semaphore.release(); } catch (Exception e) { semaphore.release(); } 最初の取得で例外が発生した場合、catchブロックでの解放により許可が増加し、セマフォはバイナリセマフォではなくなります。 正しい方法はありますか? try { semaphore.acquire(); //do stuff } catch (Exception e) { //exception stuff } finally { semaphore.release(); } 上記のコードはセマフォがバイナリであることを保証しますか?

9
yield()の主な用途は何ですか?join()やinterrupt()とどのように違うのですか?
yield()Java でのメソッドの使用について、特に以下のコード例で少し混乱しています。また、yield()は「スレッドの実行を防止するために使用される」ことも読みました。 私の質問は: 以下のコードは、使用時と使用yield()しない時の両方で同じ出力になると思います。これは正しいです? 実際、主な用途はyield()何ですか? およびメソッドとはどのようにyield()異なりますか?join()interrupt() コード例: public class MyRunnable implements Runnable { public static void main(String[] args) { Thread t = new Thread(new MyRunnable()); t.start(); for(int i=0; i<5; i++) { System.out.println("Inside main"); } } public void run() { for(int i=0; i<5; i++) { System.out.println("Inside run"); Thread.yield(); } } } …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.