Diskuze: Chat v C#
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 20 zpráv z 20.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
u chatu se to dělá tak že server naslouchá i odesílá, client nasouchá
i odesílá mě se tu nechce
celej server psát počkej si a udělám na to tutoriál nebo ti tu někdo jiný
poradí
u chatu může bejt 50000 klientu a jeden server jde oto že obě strany naslouchaj i odesílaj
Naslouchá jen server. Že naslouchá neznamená, že nemůže odesílat data.
jj a klient kouká do zdi a vymýšlí si to co ostatní posílají? Když
nenaslouchá a jen odesílá ?
To že naslouchá se týká jen navazování spojení,
samotné spojení je už pak obostranné
Chat bych řešil přes sockety, kde je server řešen obecným modelem
klienta. Všechny akce klienta jsou vnořené v prvotní akci - onstart. Ta má
parametr typu IWebSocketConnection, jakož i vnořená akce onopen. Tím se
nabízí jednoduché řešení - v onopen přidáš nového příchozího do
seznamu všech klientů a v onclose jej zase vymažeš. Parametr v
onstart je hlavní - což zase něco umož^nuje - zpráva kterou dostaneš je na
10000% od IWebSocketConnection které nabízí onstart. Tím tedy můžeš
volat na nekonkrétního odesílatele. Pokud budeš chtít nějakého
konkrétního, tak tu máš právě onen seznam všech klientů...
WebSocketServer server = new WebSocketServer("ws://IP:port");
List<IWebSocketConnection> clients = new List<IWebSocketConnection>();
server.Start(socket => // nový klient se připojil
{
socket.OnOpen = () => // pohlídání otevření spojení příchozího klienta
{
clients.Add(socket);
};
socket.OnClose = () => // ukončení spojení
{
};
socket.OnMessage = message => // přijetí nové zprávy
{
socket.Send(string);
};
});
aha, to pak jo mám ty pojmy
popletený malinko
Co kdyz se na server pripoji vice lidi a zacnou posilat nejake sahosahle texty? Nebo dokonce nejaky soubor? Tady bych pouzil ta vlakna, jak jsi o nich predtim basnil, ale to ne... tady zas jdes na dinosaura s kapesnim nozikem....
Coo? Soubory sem nepleť - ty pošleš přes stream... Sáhodlouhé texty - není problém... Co to blábolíš? Chaty přes sockety fungují bez problémů...
No, rekneme, ze vim o
cem mluvim, rekneme, ze treba jsem zkousel delat programek pro skolu, takovy
chat po lan a bez vlaken to bylo nepouzitelne
Ale pokud chces chat mezi 2 pc, tak
ano, nepotrebujes vlakna
V životě jsem nepotřeboval vlákna na chat. Jako k čemu? Chat se řeší podobně jako ty sockety - protože nač dělat xy klientů... Je to pořád jeden klient, s proměnitelnou IP, ddd,...
v tom pripade jsi
vzivote neudelal poradny chat
Dobre napisu to trochu jinak...
neni chat a chat... Je rozdil mit jedno okno a do nej bouchat zpravy od vsech
a je rozdil mit jedno okno, kam chodi zpravy od vsech a pak treba dalsi okno na
soukrome zpravy mezi 2 ci vice uzivateli. Tedy "skupinovy chat" ale zacinam se
obavat, ze tva vsevedomost a vsemohoucnost je natolik silna, ze budu muset
polozit zbrane Casto byvam
oslepen tvoji moudrosti a tak bych nerad, aby tve svetlo vyhaslo
Ahoj, koukni se na tohle http://stackoverflow.com/…on-threading je to vcelku
zajimave a vypada to uz jako kvalitni chat
Děkuji za odpověď a děkuji taky všem ostatním skusím to nějak
splácat
Zobrazeno 20 zpráv z 20.