Многопоточная версия кода Python

Я новичок в питоне. Мне нужно написать многопоточную версию этого кода таким образом, чтобы я не определял K1, K2, K3 и назначал им IP-адрес и номер порта вручную. На самом деле, я хочу, чтобы каждый из k1,k2 и k3 был заменен отдельным потоком, и я могу создать как можно больше "k" с разными ip-адресом и номером порта. Я сделал несколько попыток и до сих пор безрезультатно. Я ценю, если кто-нибудь может помочь или дать мне подсказку.

вот код:

def main():
    global k1,k2,k3
    k1.register_handler('BSSID', lambda *args, **kwargs: handle_bssid(**kwargs))
    k1.register_handler('SSID', lambda *args,**kwargs: handle_ssid(**kwargs))
    k2.register_handler('BSSID', lambda *args, **kwargs: handle_bssid(**kwargs))
    k2.register_handler('SSID', lambda *args,**kwargs: handle_ssid(**kwargs))
    k3.register_handler('BSSID', lambda *args, **kwargs: handle_bssid(**kwargs))
    k3.register_handler('SSID', lambda *args,**kwargs: handle_ssid(**kwargs))


    try:
        while True:
            k1.listen()
            k2.listen()
            k3.listen()
            handle_merge()
    except KeyboardInterrupt:
        pprint(k1.protocols)
        pprint(k2.protocols)
        pprint(k3.protocols)


if __name__ == '__main__':
    address1 = ('192.168.1.7', 2502)
    k1 = KismetClient(address1)
    address2 = ('192.168.1.16', 2502)
    k2 = KismetClient(address2)
    address3 = ('192.168.1.27', 2502)
    k3 = KismetClient(address3)
    main()

0 ответов

Другие вопросы по тегам