Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
一根线不';不要从python开始_Python_Multithreading_Sockets_Input - Fatal编程技术网

一根线不';不要从python开始

一根线不';不要从python开始,python,multithreading,sockets,input,Python,Multithreading,Sockets,Input,我正在用Python创建一个服务器/客户机,而且我对线程非常陌生,所以我可能会误解一些东西。在我的客户机类中,我有不同的线程用于不同的任务,例如:一个线程用于处理监听包,另一个线程用于向服务器发送自动递增消息 现在我想创建一个函数,在这里我还可以输入自己的消息并将它们发送到服务器。然而,这条线索甚至还没有开始,我不确定我做错了什么。所有其他线程都工作正常 职能: def send_user_input(): 打印('用户输入线程正在运行') 尽管如此: 全局消息计数器 message=input

我正在用Python创建一个服务器/客户机,而且我对线程非常陌生,所以我可能会误解一些东西。在我的客户机类中,我有不同的线程用于不同的任务,例如:一个线程用于处理监听包,另一个线程用于向服务器发送自动递增消息

现在我想创建一个函数,在这里我还可以输入自己的消息并将它们发送到服务器。然而,这条线索甚至还没有开始,我不确定我做错了什么。所有其他线程都工作正常

职能:

def send_user_input():
打印('用户输入线程正在运行')
尽管如此:
全局消息计数器
message=input('在消息中键入:')
msg_计数器+=1
sendedmessage=message+'#'+str(消息计数器)
打印('发送:'+发送消息)
sock.sendto(sendeMessage.encode('utf-8'),服务器地址)

线程开始:

    # Threads to start
    thread = Thread(target=package_listener)
    thread.start()
    thread3 = Thread(target=send_packages())
    thread3.start()
    thread4 = Thread(target=send_user_input())
    thread4.start()

您被称为
send_packages()
而不是传递函数
send_packages
的引用。你好,我不确定您的意思,我尝试启动的函数是def send_user_input():您应该将函数传递给“Thread”,它将调用它。您正在传递调用函数的结果,而不是实际函数。您被调用的
send_packages()
而不是传递对函数的引用
send_packages
Hallo Peter,我不确定您的意思,我尝试启动的函数是def send_user_input():您应该将函数传递给“线程”,它将调用该函数。您传递的是调用函数的结果,而不是实际函数。