想問的是使用此指令在design criticl section時,
恐龍的部分程式碼如下,
do{
waiting[i] = True;
key = True;
while ( waiting[i] && key )
key = TestAndSet(&lock);
C.S.
j = ( i+1 ) % n;
while ( j != i && !waiting[j] )
j = ( j+1 ) % n;
if ( j = = i )
lock = False;
else
waiting[j] = False;
R.S
}while(true);
第三行到第五行為何不能簡寫成如下呢?
while(waiting[i] && TestAndSet(&lock))
do no-ip
不了解為什麼要用一個key去接他的值。