Create a new process to run python function

M

Massi

Hi everyone,

in my script (python 2.5 on windows xp) I need to run a simple
function in a separate process. In other words I need something
similar to the fork function under UNIX. I tried with threads:

import os, threading

def func(s) :
print "I'm thread number "+s, os.getpid()

threading.Thread(target=func, args=("1",)).start()
threading.Thread(target=func, args=("2",)).start()

but this does not work, since the two threads share the same pid. Can
anyone give me a suggestion?
Thanks in advance.
 
J

James Mills

in my script (python 2.5 on windows xp) I need to run a simple
function in a separate process. In other words I need something
similar to the fork function under UNIX. I tried with threads:

Use the new multiprocesing package.
import os, threading

def func(s) :
   print "I'm thread number "+s, os.getpid()

threading.Thread(target=func, args=("1",)).start()
threading.Thread(target=func, args=("2",)).start()

Like this:

import multiprocessing

multiprocessing.Process(target=func, args=("1",)).start()
multiprocessing.Process(target=func, args=("2",)).start()

....

Surprise surprise it has almost the same API
as the threading module :)

--James
 
B

Benjamin Kaplan

Use the new multiprocesing package.


Like this:

import multiprocessing

multiprocessing.Process(target=func, args=("1",)).start()
multiprocessing.Process(target=func, args=("2",)).start()

...

Surprise surprise it has almost the same API
as the threading module :)

--James

Multiprocessing wasn't added until Python 2.6.
http://www.python.org/dev/peps/pep-0371/

In Python 2.5, it was still a 3rd party package.
http://pypi.python.org/pypi/processing

The project's website appears to be down right now though.
http://developer.berlios.de/projects/pyprocessing
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,995
Messages
2,570,230
Members
46,819
Latest member
masterdaster

Latest Threads

Top