summaryrefslogtreecommitdiffstats
path: root/Lib/test/crashers/multithreaded_close.py
blob: 52243414d6dbda0f2ec24658d2b4e75a1d75db0a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# f.close() is not thread-safe: calling it at the same time as another
# operation (or another close) on the same file, but done from another
# thread, causes crashes.  The issue is more complicated than it seems,
# witness the discussions in:
#
# http://bugs.python.org/issue595601
# http://bugs.python.org/issue815646

import thread

while 1:
    f = open("multithreaded_close.tmp", "w")
    thread.start_new_thread(f.close, ())
    f.close()