Tôi có một vấn đề với luồng Python và gửi một chuỗi trong các đối số.
def processLine(line) :
print "hello";
return;
.
dRecieved = connFile.readline();
processThread = threading.Thread(target=processLine, args=(dRecieved));
processThread.start();
Trong đó dRecpered là chuỗi của một dòng được đọc bởi một kết nối. Nó gọi một chức năng đơn giản mà ngay bây giờ chỉ có một công việc in "xin chào".
Tuy nhiên tôi nhận được lỗi sau
Traceback (most recent call last):
File "C:\Python25\lib\threading.py", line 486, in __bootstrap_inner
self.run()
File "C:\Python25\lib\threading.py", line 446, in run
self.__target(*self.__args, **self.__kwargs)
TypeError: processLine() takes exactly 1 arguments (232 given)
232 là độ dài của chuỗi mà tôi đang cố gắng vượt qua, vì vậy tôi đoán nó sẽ chia nó thành từng ký tự và cố gắng truyền các đối số như thế. Nó hoạt động tốt nếu tôi chỉ gọi hàm bình thường nhưng tôi thực sự muốn thiết lập nó như một luồng riêng biệt.