import socket
import time


def startSocket():
    # Communication setup
    server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    server_socket.bind(('localhost', 5001))
    server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
    server_socket.listen(1)
    client_socket, address = server_socket.accept()

    print("Monitoring program running...")

    while True:
        # Receive the names of active threads from the server
        try:
            active_thread_names = client_socket.recv(1024).decode()
            if len(active_thread_names) == 0:
               time.sleep(10)
            print(f"Active threads: {active_thread_names}")
        except Exception as e:
            print(str(e))
        finally:
            server_socket.close()

startSocket()
