🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.os.linux.programowanie
Article #60329

Re: fork i sockety

#60329
From: lrem
Date: Thu, 03 Nov 2005 16:58
18 lines
1664 bytes
W poście <003701c5e06c$1f617e60$1100a8c0@maciek>,
 Maciej Piekielniak nabazgrał:
>  Napisałem prosty czat server, do którego łączą się klienci, dla każdego 
> klienta tworzony jest nowy proces fork()
> i każd proces odczytuje sobie to co wysłał mu jego klient. Dzięki temu kilku 
> klientów w tej samej chwili może wysyłać swoje wiadomości do serwera.
> Wszystko działa ładnie. Tylko chciałbym jeszcze zrobić tak, żeby wiadomość 
> od każdego klienta nie dostawał tylko serwer ale także pozostali klienci.
> Jak to zrobić?

Skoro jest to prosty serwer, to może lepiej utrzymać go jako 1 proces?
Nie wywołuj forka, po prostu dla każdego klienta trzymaj osobnego
socketa. Jeśli chodzi o ,,jednoczesne'' czytanie od nich wszystkich, to
przeczytaj man 2 select.

-- 
/usr/src/linux/arch/mips/kernel/irixioctl.c: 
* irixioctl.c: A fucking mess...
Technical Details
Message-ID: <slrndmkge5.4tu.lrem@lrem.maxnet>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mail
References: <003701c5e06c$1f617e60$1100a8c0@maciek>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mail
From: lrem@lrem.maxnet
Newsgroups: pl.comp.os.linux.programowanie
Subject: Re: fork i sockety
Date: Thu, 3 Nov 2005 16:58:51 +0000 (UTC)
Organization: tp.internet - http://www.tpi.pl/
Lines: 18
Message-ID: <slrndmkge5.4tu.lrem@lrem.maxnet>
References: <003701c5e06c$1f617e60$1100a8c0@maciek>
NNTP-Posting-Host: host-ip155-94.crowley.pl
Mime-Version: 1.0
X-Trace: atlantis.news.tpi.pl 1131037131 22743 85.128.94.155 (3 Nov 2005 16:58:51 GMT)
X-Complaints-To: usenet@tpi.pl
NNTP-Posting-Date: Thu, 3 Nov 2005 16:58:51 +0000 (UTC)
User-Agent: slrn/0.9.8.1 (Linux)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit