Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

SFML 2.0 - czekanie na pakiet.

Ostatnio zmodyfikowano 2016-02-16 18:54
Autor Wiadomość
sebastian970
Temat założony przez niniejszego użytkownika
SFML 2.0 - czekanie na pakiet.
» 2016-02-01 22:59:06
Witam potrzebuje małej pomocy:

Chcę napisać chat i tutaj mam mały problem - co zrobić by serwer robił coś dopiero po odebraniu pakietu a nie wymuszał czekanie?

Dla przykładu klient wysyła wiadomość i serwer wykonuje czynność po odebraniu jej, ale gdy żaden klient nie wysyła wiadomości to serwer sobie normalnie działa. W jaki sposób skonstruować czekanie na pakiet?

P-144325
1aam2am1
» 2016-02-02 07:23:45
sf::SocketSelector::wait przyjmuje czas który ma czekać aż nadejdą dane, możesz przekazać mu bardzo małą wartość aby zwrócił fałsz gdy nic niema i twoja główna pętla programu mogła pójść dalej. (nie przekazuj sf::Time::Zero bo to nieskończony czas oczekiwania)
P-144327
jankowalski25
» 2016-02-02 14:38:07
Wystarczy podzielić program na dwa wątki.
P-144340
Gibas11
» 2016-02-02 18:56:38
Dwa wątki są niezłe ale trzeba się postarać przy synchronizacji, bo można stracić więcej niż zyskać.
P-144351
jankowalski25
» 2016-02-05 20:22:51
Można również zmienić tryb gniazd na nieblokujący.
P-144529
sebastian970
Temat założony przez niniejszego użytkownika
Problem wciąż aktualny.
» 2016-02-16 18:54:48
Nie wiem w czym leży problem. Wrzucam, więc link to programu testowego w którym w mainie odebranie packietu test1 powoduje scrashowanie aplikacji.

Serwer łączy się z klientami, przypisuję ich i wszystko działa tylko odbieranie pakietów poza funkcją w wątku login powoduje natychmiastowy crash. Co robię źle i jaka jest tego przyczyna? Mógłby ktoś zerknąć?

http://codepad.org/YKStVVfp
P-144934
« 1 »
  Strona 1 z 1