python os、multiprocess、 threading

来源:互联网 发布:linux 查cpu核数 编辑:程序博客网 时间:2024/06/05 07:01

#! /usr/bin/pythonimport os, timepids = []fd = open('testfile', 'w+')pid = os.fork()if pid > 0:     pids.append(os.getpid())     print 'In parent'     print 'fd.closed: ' + str(fd.closed)     fd.write("I am father process, i have the fd\n")     fd.close()     print pids     print 'fd.closed: ' + str(fd.closed)else:    time.sleep(10)    print 'In child'    print 'fd.closed: ' + str(fd.closed)    fd.write("I am son process, i test for the fd\n")    fd.close()    print pids    print 'fd.closed: ' + str(fd.closed)os._exit(0)



#! /usr/bin/pythonimport multiprocessing, time, osfd = open('testfile1', 'w+')para = []def test(str1, t):    para.append(1)    time.sleep(t)    print str1    print 'fd.closed: ' + str(fd.closed)    fd.write(str1)    fd.close()    print 'fd.closed: ' + str(fd.closed)    print t1.pid, t2.pid    print parat1 = multiprocessing.Process(target=test, args=("I am precose 1\n",10))t2 = multiprocessing.Process(target=test, args=("I am precose 2\n",20))t1.start()t2.start()time.sleep(30)para.append(2)fd.write('I am father process\n')print 'fd.closed: ' + str(fd.closed)fd.close()print 'fd.closed: ' + str(fd.closed)print os.getpid()print para




#! /usr/bin/pythonimport threading, timefd = open('fieltest2', 'w+')para = []def test(str, t):    print str    time.sleep(t)    para.append(1)    fd.write(str)    print parat1 = threading.Thread(target = test, args=('I am thread 1\n', 10))t2 = threading.Thread(target = test, args=('I am thread 2\n', 20))t1.start()t2.start()time.sleep(30)para.append(2)fd.write('I am father thread\n')fd.close()print para


0 0
原创粉丝点击