1 Star 1 Fork 0

onelei/ThreadFileWriter

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

ThreadFileWriter

Unity C# 多线程同时写入一个文件

是什么

​ ThreadFileWriter是一个Unity下可以多线程对文件进行写入的框架。

为什么

​ 当我们在Unity的多线程中要调试一些问题的时候,需要写入文件查看问题在哪。比如网络问题,这个时候在主线程下就无法将信息很好的打印出来。这就诞生了ThreadFileWriter。

怎么做

我们都知道多线程下要争夺某项资源需要独占,等访问结束才允许别人多其操作。事实上我们只需要对某个函数进行调用的时候加把锁就好了。我们定义一个volatile变量threadLocker

private volatile object threadLocker = new object();

在写文件的时候添加threadLocker即可

QQ截图20190701201155

同理在读文件,关闭文件总之针对文件操作的地方添加锁即可。

示例

打开并运行“ThreadFileWriter.unity”场景,在Console里面看到如下log信息,即表示示例运行成功。

QQ截图20190701195542

我们在Assets同目录下发现创建了两个文件“Log.txt”和“Test.txt”,里面写入了部分log信息。

QQ截图20190614202048

空文件

简介

Unity C# 多线程同时写入一个文件 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C#
1
https://gitee.com/onelei1992/ThreadFileWriter.git
git@gitee.com:onelei1992/ThreadFileWriter.git
onelei1992
ThreadFileWriter
ThreadFileWriter
master

搜索帮助