範例
http://pastebin.com/hz39fQWC
期望的狀況是,寫入檔案的內容是
0,1,2,3,4.....,999,
但實際上,檔案的內容可能會變成這樣:
....8,9,11,10,12....
也就是說,呼叫 fs.appendFile() 的順序
並不代表底層實際上處理的順序。
可能會有人回答:
用 fs.appendFileSync 或是 把字串黏好之後再寫到檔案
但我想問的不是這個
我貼出來的只是一個簡單的範例
這種底層處理順序問題
可能出現在,資料庫、socket等等,任何由底層去處理的異步動作上
只要底層實作時,不管順序問題
就可能遇到這種狀況
請問有什麼方式可以保證底層異步行為的處理順序問題?