Estoy intentando pasar un argumento de cadena a una función de destino en un proceso. De alguna manera, la cadena se interpreta como una lista de tantos argumentos como caracteres hay.Argumentos de cadena en el multiproceso de python
Este es el código:
import multiprocessing
def write(s):
print s
write('hello')
p = multiprocessing.Process(target=write, args=('hello'))
p.start()
consigo esta salida:
hello
Process Process-1:
Traceback (most recent call last):
>>> File "/usr/local/lib/python2.5/site-packages/multiprocessing/process.py", line 237, in _bootstrap
self.run()
File "/usr/local/lib/python2.5/site-packages/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
TypeError: write() takes exactly 1 argument (5 given)
>>>
¿Qué estoy haciendo mal? ¿Cómo se supone que voy a pasar un stringn?
Gracias, Ariel