New submission from anonyprog:

Under certain circumstances, creating a directory using os.mkdir then
immediately changing to it using os.chdir fails with a file not found
exception.

Here is some code to demonstrate that. Using the following program with
a parameter of 1 works fine. But anything greater than that and
exceptions occur in the first os.chdir until only one thread is left to
run completely.

Tested on Python 2.5.1 for Windows and Python 2.3.5 for Linux.

    # mkdirtest.py
    #
    # usage: mkdirtest <number of threads>

    import os, threading, sys

    x = int(sys.argv[1])

    class MkdirTest(threading.Thread):

        def __init__(self, t):
            threading.Thread.__init__(self)
            self.t = t
            print "new thread "+str(t)

        def run(self):
            for i in range(0,50):
                s = str(self.t)+"_"+str(i)
                print "mkdir "+s
                os.mkdir(s)
                os.chdir(s)
                os.chdir("..")
            print "end thread "+str(t)

    for t in range(0,x):
        print t
        a = MkdirTest(t)
        a.start()

----------
components: None
messages: 56992
nosy: anonyprog
severity: normal
status: open
title: mkdir+chdir problem in multiple threads
type: behavior
versions: Python 2.5

__________________________________
Tracker <[EMAIL PROTECTED]>
<http://bugs.python.org/issue1367>
__________________________________
_______________________________________________
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to