了解知识
    AutoHotkey功能强大,应用简单,与其它同类软件(比如HoeKey)相比,占用内存略大(约4M)。但是如果你的AutoHotkey(或编译后的.exe程序)常驻内存,大部分时间只是在后台等待热键或者等待其它任务,还是有办法减少它的内存占用的。我试用了Empty.exe这个小工具,效果很好。
    Empty.exe是一个来自于微软的命令行小工具(程序大小仅9.5k),可以用来释放指定应用程序占用的内存。
它的应用格式为: empty.exe 进程PID 或者 empty.exe 进程名称
 
点这里下载empty.exe
 
    可以将empty.exe放在脚本目录下或系统临时文件夹中,在脚本每次从前台转入后台时,或者完成某个热键响应后,加入下面这行代码:
 
    RunWait, empty.exe AutoHotkey.exe,,Hide
 
如果脚本是编译成exe文件后运行的,则改成以下这行:
 
   RunWait, empty.exe %A_ScriptName%,,Hide
 
它的作用是,在AutoHotkey(或exe程序)完成某项任务后,调用empty.exe释放自身的空闲内存。这可以大减小AutoHotkey(或编译后的.exe程序)的内存占用。下面是加入这行代码前后AutoHotkey内存占用对比:
 
用empty.exe前:
 

 
用empty.exe后:
 
 
    从以上对比看出,AutoHotkey占用的内存从4M降到了约500k,而且不增加虚拟内存的占用(前后都是1460k)。可见empty.exe并是不象部分内存整理软件那样,把内存转移到虚拟内存中,而是真正降低了应用程序占用的内存。
标签: AutoHotkey
扩展知识