Сетевое приложение, которое я написал, устанавливает связь TCP с N-1 (самой) другими машинами в списке (N) машин, участвующих в системе.
При запуске приложения приложение в настоящее время выбираетСлучайное время задержки (1000-3000 мс) перед попыткой подключения к каждой из его одноранговых систем
Если машина 1 пытается подключиться к машине 2, одновременно с машиной 2 пытается подключиться к машине 1. В настоящее времяЯ просто отбрасываю оба соединения, снова выбираю случайные времена (100-500 мс) и повторяю попытки соединения.
Каждая машина в конечном итоге устанавливает соединение с любой другой машиной, и система работает, но я думал, есть лилучший подход к разрешению этой ситуации?