• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

SFML - network problem

0 głosów
246 wizyt
pytanie zadane 13 października 2016 w C i C++ przez L33TT12 Gaduła (3,950 p.)

Hejka, własnie się uczę modułu network z sfml, oraz mam następujący program:

#include <SFML\Network.hpp>
#include <iostream>
#include <string>
unsigned short port = 50002;
sf::IpAddress IP = sf::IpAddress::getLocalAddress();
int main()
{
	sf::TcpSocket socket;
	sf::TcpListener listener;
	sf::SocketSelector selector;

	sf::Packet pakiet;
	std::string str;

	char c;
	std::cin >> c;
	if (c == 's')
	{
		listener.listen(port);
		listener.accept(socket);
		selector.add(socket);
		for (;;)
		{
			if (selector.wait())
			{
				if (selector.isReady(socket))
				{
					if(socket.receive(pakiet) == sf::Socket::Done)
					{
					pakiet >> str;
					std::cout << str << std::endl;
					pakiet.clear();
					std::getline(std::cin, str);
					pakiet << str;
					socket.send(pakiet);
					}
				}
			}
		}
	}
	else
	{
		socket.connect(IP, port);
		for (;;)
		{
			std::getline(std::cin, str);
			pakiet << str;
			socket.send(pakiet);
			socket.receive(pakiet);
			pakiet >> str;
			std::cout << str << std::endl;
			pakiet.clear();
		}
	}
	system("pause");

}

Program działa, aczkolwiek tak że raz wysyła wiadomość klient, raz server. Mógłby mnie ktoś nakierować co należy zrobić by przypominało to bardziej normalny chat? Chodzi mi o to, że i klient i server mogą wysyłać wiadomości kiedy chcą.

1 odpowiedź

0 głosów
odpowiedź 13 października 2016 przez JAKUBW Nałogowiec (33,470 p.)
Zrobić poboczny wątek do odbierania danych

Podobne pytania

0 głosów
1 odpowiedź 145 wizyt
pytanie zadane 19 maja 2018 w C i C++ przez niezalogowany
0 głosów
0 odpowiedzi 236 wizyt
pytanie zadane 19 maja 2018 w C i C++ przez niezalogowany
0 głosów
1 odpowiedź 545 wizyt
pytanie zadane 16 maja 2018 w C i C++ przez niezalogowany

93,428 zapytań

142,423 odpowiedzi

322,652 komentarzy

62,789 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...