條件變數放在共享記憶體中可以程序間同步嗎

2022-06-23 09:25:11 字數 616 閱讀 4172

1樓:匿名使用者

當把條件變數或互斥量放在共享記憶體區時,可用於程序間同步。

同樣的情況還有讀寫鎖,它們都是隨程序的持續性。

j**a裡的靜態變數是放在了堆記憶體還是棧記憶體

2樓:百度網友

不在棧和堆中,在方法區中。詳解見樓上的回答。

3樓:育知同創教育

堆區:1.儲存的全部是物件,每個物件都包含一個與之對應的class的資訊。(class的目的是得到操作指令)

2.jvm只有一個堆區(heap)被所有執行緒共享,堆中不存放基本型別和物件引用,只存放物件本身

棧區:1.每個執行緒包含一個棧區,棧中只儲存基礎資料型別的物件和自定義物件的引用(不是物件),物件都存放在堆區中

2.每個棧中的資料(原始型別和物件引用)都是私有的,其他棧不能訪問。

3.棧分為3個部分:基本型別變數區、執行環境上下文、操作指令區(存放操作指令)。

方法區:

1.又叫靜態區,跟堆一樣,被所有的執行緒共享。方法區包含所有的class和static變數。

2.方法區中包含的都是在整個程式中永遠唯一的元素,如class,static變數。