所以,我正在制作IDS - 我正在检测连接到主机的连接。当我终于运行它时我得到了这个:
MySQLConnection
以下是代码:
Exception in thread Thread-3709:
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/threading.py", line 914, in _bootstrap_inner
self.run()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/threading.py", line 862, in run
self._target(*self._args, **self._kwargs)
TypeError: Scan() argument after * must be a sequence, not int
如果有人可以帮助我并根除所有错误,我们将不胜感激......
答案 0 :(得分:0)
您需要将args
的{{1}}参数值定义为序列;你不在这里:
Thread()
RawPackThread = threading.Thread(target=PrintConnections, args=(listConnection))
不是元组,因为缺少逗号:
(listConnection)
同样适用于RawPackThread = threading.Thread(target=PrintConnections, args=(listConnection,))
中的Thread()
来电:
StartListening
应该是
ttcp = threading.Thread(target=ListenTCP, args = (socketObjTCP))
tudp = threading.Thread(target=ListenUDP, args = (socketObjUDP))
我不会使用列表来在线程之间进行通信;请改用queue
module中的线程安全对象。