最近接触多线程的使用,要使多条新线程工作顺利的话。写代码真的要比平时更多加注意,还有思路要清晰。先思考好任务的执行顺序再来写代码
1.本次用到TEvent 事件来同步。结果自己粗心大意复制代码,其中一个Event的name参数 一样了,导致,老是不同步。这点要注意 要么就name不给
2.由于Tevent 变量我是开了两个独立的单元 放在 implementation 上声明,这样其它单元也可以访问了,问题就来了,由于是复制粘贴导致两个变量名称一样了,导致老是不同步
3.本次线程里面用到adoquery 的操作数据,这点也要注意。如果不同步的话,很容易出现一些莫名奇妙的问题,什么异步不能操作,多步产生什么。。。等问题都是因为线程没有同步好。
导致别的线程在操作adoquery 另外一个线程又关闭它去查数据。 还有就是不同线程的ado连接最好是独立的连接