Zmiana adresu w zmq_connect()

0

Chciałbym zmienić adres podczas działania programu.

na początku programu klienta ustawiam context i socket oraz ustawiam aby czekał max 100ms gdy sie zablokuje
void * acontext = zmq_ctx_new();
void * asocket = zmq_socket(acontext,ZMQ_REQ);
int val=100;
zmq_setsockopt (asocket, ZMQ_LINGER, &val, sizeof (val));
zmq_connect(asocket, Adres); *adres powinien być zmieniany (np tcp:*192.168.1.106:5555 na tcp://192.168.12.16:5555) gdy zmieni się ip serwera zmq (adres wpisuje ręcznie)

noo i tu jeśli adresy serwera i klienta się zgadzają to wszystko ok. Ale aplikacja kilenta nie wie w trakcie uruchomienia jaki adres ma serwer, ponieważ aplikacje są na osobnych komputerach (w jednej sieci lokalnej).

Więc gdy chce zmienić adres to wykonuje
zmq_disconnect (asocket, Adres);
zmq_connect(asocket, NowyAdres);

lecz nic sie nie dzieje.

Jak poprawnie zmienić adres i połączyć się z serwerem?

0

Nie znam tej biblioteki. Ale nie potrzebujesz zniszczyć/zwolnić też kontekstu? Spodziewałbym się tego używając biblioteki w C.

1 użytkowników online, w tym zalogowanych: 0, gości: 1