Edward_jie

for you, my Hall of Frame

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

在使用多线程的时候,经常会报错OpenFile Operation not permitted on IsolatedStorageFileStream,原因是IsolatedStorageFile和IsolatedStorageFileStream在多线程中被多处调用而出现不可预知的内存崩溃,此时需要进行加锁,代码如下:

 private static readonly object _readLock = new object(); 
using (IsolatedStorageFile myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication()) { //Open existing file lock (_readLock) { using (IsolatedStorageFileStream fileStream = new IsolatedStorageFileStream("log.txt", FileMode.Append, myIsolatedStorage)) using (StreamWriter writer = new StreamWriter(fileStream)) { string someTextData = "\r\n" + DateTime.Now + "-----------" + message; writer.Write(someTextData); } }

 

posted on 2012-09-29 11:16  Edward_诺  阅读(483)  评论(0编辑  收藏  举报