這個論壇的新手 - 看起來不錯! 我有一些處理代碼,定期從遠程設備無線讀取數據,並將該數據作爲字節寫入文件,例如data.dat文件。我想使用Xcode在Mac Mini上編寫Objective C程序來讀取此文件,解析數據並在數據值指示問題時對數據執行操作。我的問題是:我的兩個不同的程序可以異步訪問相同的文件嗎?如果這個是一個問題,你可以建議一種技術,將允許這些操作? 謝謝, Kevin H.兩個程序訪問一個文件
0
A
回答
0
多個進程可以一次讀取同一個文件,沒有任何問題。一個進程也可以從一個文件中讀取,而另一個寫入沒有問題,但是你必須小心確保你讀入任何寫入的新數據。儘管如此,多個進程不應該將寫入同一個文件。操作系統會讓你這樣做,但是數據的排序是不確定的,你會喜歡覆蓋數據 - 總的來說,如果你這樣做,你會有一段糟糕的時間。所以你應該注意確保一次只有一個進程寫入文件。
保護文件以便一次只能有一個進程可以寫入的最簡單方法是使用C函數flock()
,儘管該函數有一點基本,可能會或可能不適合您的用例。
+0
這正好解決了我的問題。感謝您提供有用,簡潔的答案。 – kjhart0133 2015-01-27 21:02:09
相關問題
- 1. JAVA:我的兩個應用程序如何訪問同一個文件?
- 2. 訪問同一應用程序中的兩個.csproj文件之間的功能
- 3. 訪問兩個從一個php文件MySQL數據庫
- 4. 一個Xcode項目,兩個目標,兩個應用程序,兩個Default.png文件?
- 5. 訪問提供了兩個.cpp文件
- 6. 兩個grails應用程序都使用springSecurity,登錄一次訪問兩個
- 7. 訪問由另一個程序創建的文件
- 8. 從另一個應用程序訪問一個應用程序中的事件
- 9. 同時訪問來自兩個應用程序的文本文件
- 10. 訪問事件處理程序之間有兩個形式
- 11. 加入兩個訪問表到一個
- 12. Postgres通過兩個不同的程序訪問單個列
- 13. C++程序處理兩個文件而不是一個
- 14. 兩個java文件,在同一目錄中,一個訪問其他類/ s?
- 15. 當一個進程訪問一個文件,或者從一個進程獲取一個文件訪問的調用堆棧時進入調試器
- 16. 兩個不同的.NET應用程序無法訪問db4o文件
- 17. 讓幾個程序集訪問相同的文本文件
- 18. Amazon S3文件訪問多個進程
- 19. iPhone通過兩個線程訪問一個資源
- 20. 一個應用程序可以從iPhone上的另一個應用程序訪問文件的路徑嗎?
- 21. 在同一個bean中訪問兩個控制器 - 調度程序Servlet
- 22. 無法在一個程序中編譯兩個文件的程序
- 23. 程序比較兩個xml文件
- 24. 比較兩個文件的程序
- 25. 從另一個文件訪問變量
- 26. 訪問在另一個.cpp文件
- 27. 無法訪問在另一個文件
- 28. 從資源文件訪問一個TextView
- 29. 嘲笑一個隨機訪問文件
- 30. 訪問另一個XML文件
使用標籤時請多加註意。 「Processing」是一種編程語言,你的問題與該語言無關。 – 2015-01-27 02:59:51
感謝您的評論。我將來會更加小心。雖然我沒有明確說明,Processing代碼寫入文件,我想用我的C代碼讀取該文件,所以在技術上,我的問題確實與Processing有關,但我沒有說清楚。 – kjhart0133 2015-01-27 21:00:05