Блокирующая или неблокирующая связь
Мне нужно общаться с несколькими устройствами через TCP В моем дизайне. Моя концепция - событийно-ориентированная система на C++ с Embarcadero studio. Например, я хотел бы обнаружить, что все устройства готовы, а затем продолжить инициализацию. В управляемой событиями системе означает, что в каждом объекте устройства есть "обратные вызовы" от TcpConnect. Затем я должен периодически (по таймеру) проверять какой-либо флаг из каждого обратного вызова, и когда все установлено, я могу сказать: ОК, он готов, и я могу продолжить в своем коде, например, до инициализации. В блокирующем подходе это кажется проще. Я могу вызвать метод TcpConnct() для каждого устройства и ждать их. Я думаю, что это намного проще (код хорошо читается и не проверяется), чем случай, управляемый событиями. Преимущество кейса ED в том, что соединение может работать одновременно и может быть быстрее. Мой вопрос очень общий, я знаю. Но какое понятие хорошее, предпочтительное или какое условие важно выбрать одно или другое.
VSM