借助微软的 thread local storage 技术,HotKeyIt 开发了全新的 TLS 版本。
从AHK自身的伪多线程,到借助AHK-DLL实现的更接近多进程的多线程,现在,我们终于看到了更加完美的多线程技术。
我所看到的最大的改进:
1,大幅减少内存占用。AHK-DLL 新建 400 个线程,需要 500MB,而 TLS 则只需要 100MB,并且速度更快。
2,交互数据更加安全和自由。
现在只有V2版本:
https://github.com/HotKeyIt/ahkdll-v2-tls-release
讨论:
https://autohotkey.com/boards/viewtopic ... f519c73fe5
H-TLS分支 - 使用 TLS 实现的多线程
Moderators: tmplinshi, arcticir
Re: H-TLS分支 - 使用 TLS 实现的多线程
严重关注……
Re: H-TLS分支 - 使用 TLS 实现的多线程
最新进展.
似乎新版改进成原版+tls,所以已经兼容原版.
不过考虑到V2的用户少之又少,影响不大.
相应稳定性也趋同于原版,V2用户可以放心使用了.
这算是AHK历史上最富的富集了.
用变态代码测试下,加载40万个线程.内存的使用从3M上升到33M.
似乎新版改进成原版+tls,所以已经兼容原版.
不过考虑到V2的用户少之又少,影响不大.
相应稳定性也趋同于原版,V2用户可以放心使用了.
这算是AHK历史上最富的富集了.
用变态代码测试下,加载40万个线程.内存的使用从3M上升到33M.
Code: Select all
loop 400000
NewThread("#NoTrayIcon`nSleep, 2")
MsgBox,Test
Who is online
Users browsing this forum: No registered users and 6 guests