2017-06-03 109 views

回答

1

讀取和添加使您能夠以原子方式讀取和修改內存位置。共識意味着協議(在這種情況下爲獲取和添加)可以爲n個不同的線程提供共識。

這是什麼意思?

我們的目標是使用協議,例如,一個線程確定一個值,並且該值被所有其他線程採用。你可以谷歌一些這些協議。在多線程中,我們可以自動修改內存並且線程有時決定一個值,這一點很重要。

重要的是要注意共識協議是無等待的,這意味着即使一個人死亡(出於某種原因)所有線程都會取得進展。因此,在使用多線程時,瞭解對象一致性編號非常重要。一個共同的數字例如一個原子寄存器(1)告訴我們,我們將永遠不能僅使用原子寄存器來實現一個對象,這個寄存器可以爲2個線程提供共識。這就是爲什麼我們在多線程中使用諸如讀取和添加的構造。

示例 OS中的調度通常使用FIFO隊列完成。先進先出隊列有兩個共識,因此將它們用於多線程是安全的。

相關問題