I have a problem with Python threading and sending a string in the arguments.
def processLine(line) :
print "hello";
return;
.
dRecieved = connFile.readline();
processThread = threading.Thread(target=processLine, args=(dRecieved));
processThread.start();
Where dRecieved is the string of one line read by a connection. It calls a simple function which as of right now has only one job of printing "hello".
However I get the following error
Traceback (most recent call last):
File "C:Python25libhreading.py", line 486, in __bootstrap_inner
self.run()
File "C:Python25libhreading.py", line 446, in run
self.__target(*self.__args, **self.__kwargs)
TypeError: processLine() takes exactly 1 arguments (232 given)
232 is the length of the string that I am trying to pass, so I guess its breaking it up into each character and trying to pass the arguments like that. It works fine if I just call the function normally but I would really like to set it up as a separate thread.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…