2014-08-31 55 views
0

TaffyDb和nodejs中是否存在競態條件? 例如: 使用require('net')與node.js進行100個併發連接 可靠數據讀取依賴於變量Dbman(示例)鎖定:未讀取時爲0,讀取時爲1。如果在要設置的鎖之前調用2次讀取,數據是否會被讀取並因此被破壞?TaffyDB和node.js是否存在競爭條件?

回答

1

Node.js程序是JavaScript程序,因此沒有多線程。

每個函數都從一個單獨的調度循環線程運行,所以如果你設置一個變量爲一個特定的值,它將保證通過該函數調用的整個執行保持該值。

雖然執行單個函數時不能運行其他函數,因此您正在考慮的競爭條件是不可能的。