作者XperiaZ6C (索尼)
看板Python
标题[问题] 如何删除exe执行後产生的资源档
时间Fri Mar 8 09:34:33 2019
我是使用pyinstaller打包的
因为有将一些程式执行时所需要的资源也一起包进去
所以每次执行exe档之後
它都会重新解压一次exe档案里面他资源
并放到暂存里区
如果反覆执行很多次的话
会在「C:\Users\username\AppData\Local\Temp\」里面
产生一大堆垃圾
想请问有办法在程式码中加入一段来清除这些资源吗
不知道怎麽找这关键字
Google出来的几乎都是教怎麽清除记忆体资源之类的QQ
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 174.206.56.211
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1552008876.A.947.html
1F:推 dennisxkimo: pyinstaller clean %TEMP%03/08 12:22
这是让pyinstaller去清吗?
但因为我打包成exe之後分享去别人电脑好像就不能这样清了QQ
2F:推 nini200: 哇 你没讲我都不知道 哈哈03/08 12:51
学打包的时候无意中发现的XD
3F:→ AndCycle: 正常来讲他会清, 没清乾净的话要看你的程式做了什麽03/08 16:39
4F:→ AndCycle: pyinstaller ref: How the One-File Program Works03/08 16:50
5F:→ AndCycle: 如果你的程式不正常结束或是当掉, 他会没办法帮你收尾03/08 16:50
感谢大大提供的关键字
我再研究一下
因为有时候使用者只是试跑或是其他原因
不会等到程式全部跑完就强制关了
所以才希望可以清一下
※ 编辑: XperiaZ6C (174.206.56.211), 03/08/2019 23:40:36
8F:→ s860134: workaround 方法应该蛮多的,另一个文件去记 pid 每次开03/09 12:28
9F:→ s860134: 确认里面的 pid 还活着没,不在的就砍 tmp 并更新档案03/09 12:29
感谢大大!
※ 编辑: XperiaZ6C (47.44.8.66), 03/09/2019 12:44:12