Selam, Gayet alengirli bir sahaya ilk adiminizi atmis bulunmaktasiniz :) > - thread'e 1 client atandiktan sonra thread rutinindeki while'in donmesi > duruyor. ama hala o baglanan client'tan gelen verileri okuyabiliyor.
while'in donmesi duruyor derken neyi kastediyorsunuz? while'dan mi cikiyor program takiliyor mu? 1. durumda kodun bir yerinde ya return ya da break vardir, ikinci durumda da soket blocking mode'da oldugu icin buffer'inda veri olmayan bir descriptor'da block olmustur. > -socketin blocking oldugunu dusunerek nonblocking yaptigimda client'tan > data geldikten sonra sonra tekrar okumaya calistigimda -1 aliyorum. errno ne? > -her thread'e 1er client atandiktan sonra baglanan clientlarin isleri > yapilamiyor. yani recv ile gelen datayi alamiyorum. recv ya hata doner, donmuyorsa da socket buffer'da veri yoktur. > - thread rutinin icinde select(2) kullanmaya calistim fakat bu sefer bagli > clientlardan recv ile data alamiyorum. Bence Ricahrd Stevens'in Unix Network Programming kitabini heen edinin ve initial kisimlarini okuyun. Ikinci tavsiyem de multithreaded bir server dizayni yerine, multiprocess ve shared memory, pipe, message queue gibi IPC mekanizmalarini kullan diginiz bir server dizayn edin. Multithreaded bir server programlamak, gerektirdigi dikkat ve istedigi uzmanliktan dolayi su an icin sizin icin bayagi basagrisi olabilir. Murat --------------------------------------------------------------------- Cikmak icin, e-mail: [EMAIL PROTECTED] Liste arsivi: http://lists.enderunix.org ve http://www.mail-archive.com/freebsd@lists.enderunix.org Turkiye'nin ilk FreeBSD kitabi: http://www.acikkod.com/freebsd.php