我们在开发软件的时候,可能会遇到多条线程写配置项(ini文件)的问题,那会不会相互干扰?比如2个线程同时写配置项然后其中一个记录失败,本节我们来探究一下这个问题
源码:
代码如下:
窗口程序集名 | 保 留 | 保 留 | 备 注 | 窗口程序集_启动窗口 | | | | 变量名 | 类 型 | 数组 | 备 注 | 路径 | 文本型 | | a | 整数型 | | b | 整数型 | |
路径 = 取特定目录 (3 ) + “test.ini”线程_启动 (&子程序1 )判断循环首 (真)a = a + 1 写配置项 (路径, “datta”, “a”, 到文本 (a )) 判断循环尾 ()b = b + 1 写配置项 (路径, “data”, “b”, 到文本 (b ))
我们一共有2个按钮,当按钮1按下的时候,我们使用多线程加载死循环,相当于高频次写配置文件,那么当我们点击按钮2的时候,是否每一次都能成功?如果不成功说明多线程下同时写配置文件会产生冲突,反之则不会
具体测试方法
①:先点击按钮1,开始高频写配置文件
②:点击按钮2,查看写到桌面的配置文件是否正常写入了b=1
③:再次点击按钮2,再次查看写到桌面的配置文件是否正常写入了b=2
④:重复点击按钮2,确定是否每次都可以正常写出
结论:
通过测试,每次点击按钮2,都可以正常写入,也就是多线程下不会冲突,应该是内部有排队等待机制
(点击返回课程目录:https://shuxiangyage.net/forum.php?mod=viewthread&tid=1134)
|