https://github.com/JuliaLang/julia
Revision 57a022f74ca7ace45df3eb5d0940201a297c270b authored by Stefan Karpinski on 14 August 2019, 18:22:28 UTC, committed by GitHub on 14 August 2019, 18:22:28 UTC
The main change here is that the non-higher-order versions of mktemp/dir will
now by default put the temp files/dirs that they create into a temp cleanup list
which will be deleted upon process exit. Instead of putting lots of atexit
handlers in the list, this uses a single handler and keeps a list of temporary
paths to cleanup. If the list gets long (> 1024) it will be scanned for
already-deleted paths when adding a new path to the cleanup list. To avoid
running too frequently, it doubles the "too many paths" threshold after this.

If cleanup fails for higher order `mktemp() do ... end` forms, they will also
put their temp files/dirs in the cleanup list but marked for "asap" deletion.
Every time the above mechanism for cleaning out the temp cleanup list scans for
already-deleted temp files, this will try again to delete these temp files.
1 parent a6275b6
History
Tip revision: 57a022f74ca7ace45df3eb5d0940201a297c270b authored by Stefan Karpinski on 14 August 2019, 18:22:28 UTC
mktemp/dir: delete temp files on exit by default (#32851)
Tip revision: 57a022f
File Mode Size
.github
base
contrib
deps
doc
etc
src
stdlib
test
ui
.appveyor.yml -rw-r--r-- 2.1 KB
.gitattributes -rw-r--r-- 67 bytes
.gitignore -rw-r--r-- 257 bytes
.mailmap -rw-r--r-- 11.0 KB
.travis.yml -rw-r--r-- 6.1 KB
CITATION.bib -rw-r--r-- 2.6 KB
CONTRIBUTING.md -rw-r--r-- 21.2 KB
HISTORY.md -rw-r--r-- 258.4 KB
LICENSE.md -rw-r--r-- 5.1 KB
Make.inc -rw-r--r-- 39.9 KB
Makefile -rw-r--r-- 28.1 KB
NEWS.md -rw-r--r-- 7.2 KB
README.md -rw-r--r-- 6.3 KB
VERSION -rw-r--r-- 12 bytes
sysimage.mk -rw-r--r-- 3.8 KB

README.md

back to top