Czy ktoś wie, jak przekazać wiele parametrów do procedury Thread.Start?wątek z wieloma parametrami
Pomyślałem o rozszerzeniu klasy, ale klasa wątku C# jest zapieczętowana.
Oto co myślę, że kod będzie wyglądać następująco:
...
Thread standardTCPServerThread = new Thread(startSocketServerAsThread);
standardServerThread.Start(orchestrator, initializeMemberBalance, arg, 60000);
...
}
static void startSocketServerAsThread(ServiceOrchestrator orchestrator, List<int> memberBalances, string arg, int port)
{
startSocketServer(orchestrator, memberBalances, arg, port);
}
BTW uruchomić liczbę wątków o różnych orkiestratorów, salda i portów. Proszę również rozważyć bezpieczeństwo wątków.
Jak bezpieczne jest wykonywanie wyrażeń na osobnym wątku? –
To jest bezpieczne - z zastrzeżeniami.Może jednak wywoływać dziwne efekty uboczne, jeśli dostosowujesz zmienne natychmiast po wywołaniu tego, ponieważ skutecznie przekazujesz zmienne za pomocą odwołania. –
wszelkie pomysły, jak sprawić, by wątek był bezpieczny? –