![]() |
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Regler | Links | Albums | FAQ | Members List | Kalender | Søgning | Dagens Stillinger | Mark Forums Read |
| HP-UX HP-UX (Hewlett Packard Unix) er Hewlett-Packard's ejendomsretligt gennemførelsen af Unix-operativsystemet, der er baseret på System V. |
Mere UNIX og Linux Forum Emner du måske kan finde Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Last Post |
| Problemet med socket læsning | swap007 | UNIX for Advanced & Ekspertsøgning Brugere | 2 | 05-21-2008 02:08 AM |
| HTTP Keep-Alive socket problem | imdupeng | Højtstående Programmering | 0 | 03-29-2008 09:11 PM |
| Socket kommunikation, men ikke skrive | madfox | Højtstående Programmering | 2 | 12-04-2007 03:44 PM |
| Problem Tilslutning til Socket | Stevhp | Højtstående Programmering | 6 | 04-30-2007 08:27 PM |
| Socket Problem | Agent007 | Højtstående Programmering | 3 | 04-03-2004 09:15 PM |
|
|
LinkBack | Thread Tools | Søg denne tråd | Rate Thread | Display Modes |
|
||||
|
Vores system er at have en server og flere kunder. Vi overvåger kundens FDS hjælp select () system opkald i HP-UX.
Efter oprettelse af forbindelse-hjælp stikkontakt med fjernbetjeningen klient, før begynder at sende de data, vi kontrollere status af sokkel bruge select () opkald. For første 16 kunder select () opkaldet er fjernet blokeringen og FD_ISSET () returnerer succes. Men fra den 17. klient og fremover, skal du vælge () er fjernet blokeringen og FD_ISSET () returnerer ikke succes (det er tilbage negativ værdi), både i HP-UX 11 og 11i. Men den samme logik virker fint indtil 1024 kunder i Solaris, AIX, Linux. Kildekode er nævnt nedenfor, Du fortælle, hvordan man afhjælpe dette problem. fd_set Writefds; struct timeval Timeout; int RetCode; int RetValue; int SockDesc; struct sockaddr_in klient; char BulkData [5.000] \u003d "Kvittering"; int retVal; int clientlen \u003d sizeof (struct sockaddr_in); client.sin_family \u003d AF_INET; client.sin_addr.s_addr \u003d INADDR_ANY; client.sin_port \u003d htons (SERVER_PORT); SockDesc \u003d socket (AF_INET, SOCK_STREAM, 0); connect (SockDesc, & client, (socklen_t) clientlen); Timeout.tv_sec \u003d 0; Timeout.tv_usec \u003d 0; FD_ZERO (& Writefds); FD_SET (SockDesc, & Writefds); RetCode \u003d vælge (0, NULL, & Writefds, NULL, & timeout); if (RetCode> 0) ( retval \u003d FD_ISSET (SockDesc, & Writefds); if (retval> 0) ( send (SockDesc, szBulkData, (size_t) sizeof (szBulkData), 0); ) anden ( printf ( "FD_ISSET er mislykkedes:% d \ n", retval); ) ) else if (RetCode \u003d\u003d -1) ( printf ( "select tilbage Fejl:% d \ n", errno); ) else if (RetCode \u003d\u003d 0) ( printf ( "select return 0 [timeout opstod]. \ n"); ) |
| Bogmærker |
| Thread Tools | Søg denne tråd |
| Display Modes | Bedøm denne tråd |
|
|