|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Oct 2005
Città: Pisa
Messaggi: 1047
|
[C] Socket: comunicazione tra processi
Sto usando delle socket per la comunicazione tra processi multithreads in esecuzione sulla stessa macchina.
Ho dei dubbi che vorrei potermi chiarire con il vostro aiuto... Quando un processo server scrive sulla socket e subito dopo termina, il processo client è in grado di poter leggere lo stesso o viene generato un errore in lettura?
__________________
Vendite concluse ottimamente con: Bastian UMTS, Tiscaliniano. --------------------------------------------------------- 1) Macbook Pro Core 2 Duo 2,16Ghz - 2GB di RAM - HD 160GB - Glossy Widescreen - 2°Gen 2) iPhone 3G - 8GB Black 3) Ipod Shuffle Blu 1GB 4) iMac 27" QuadCore i7 |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Oct 2005
Città: Pisa
Messaggi: 1047
|
ho letto che la read() eseguita dal client restituirebbe un EOF perche' lo scrittore se ne e' andato... ma non capisco se cmq il client riesce a leggere lo stesso il buffer oppure lo trova vuoto...
![]()
__________________
Vendite concluse ottimamente con: Bastian UMTS, Tiscaliniano. --------------------------------------------------------- 1) Macbook Pro Core 2 Duo 2,16Ghz - 2GB di RAM - HD 160GB - Glossy Widescreen - 2°Gen 2) iPhone 3G - 8GB Black 3) Ipod Shuffle Blu 1GB 4) iMac 27" QuadCore i7 |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Feb 2002
Messaggi: 906
|
Quote:
Non c'è un modo di sapere se il server è bloccato oppure si è sconnesso ma si usa fare che se dopo un tot di tempo che non arrivano pacchetti dal server il client si disconnette. |
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
|
la read() ? per i socket usa recv()
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z ∞Mb - Win Eight SP (1 > yours) 16 Valve |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
|
infatti e´ consigliabile il flag O_NONBLOCK
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z ∞Mb - Win Eight SP (1 > yours) 16 Valve |
![]() |
![]() |
![]() |
#6 | |
Senior Member
Iscritto dal: Oct 2005
Città: Pisa
Messaggi: 1047
|
Quote:
la mia situazione e' questa: SERVER: manda il pkt. SERVER: termina CLIENT: esegue la read() quando il server e' gia terminato. io pensavo che quando il client esegue questa la read(), essa restituisce EOF subito, non allla prossima e il clinet riesce lo stesso a leggere cmq il pkt. ho capito male?
__________________
Vendite concluse ottimamente con: Bastian UMTS, Tiscaliniano. --------------------------------------------------------- 1) Macbook Pro Core 2 Duo 2,16Ghz - 2GB di RAM - HD 160GB - Glossy Widescreen - 2°Gen 2) iPhone 3G - 8GB Black 3) Ipod Shuffle Blu 1GB 4) iMac 27" QuadCore i7 |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:25.