At 03:17 PM 1/7/2009, Ryan Burke wrote:
>My educated guess is that they are using non-blocking calls to recvfrom
>using the MSG_DONTWAIT flag. Normally recv and recvfrom will block until
>data is received. This stops the flow of the program unless it is
>multi-threaded with on thread dealing with network I/O and some kind of
>parent thread to do something when network I/O occurs. Look at the
>MSG_DONTWAIT in "man recvfrom" and it explains it. It is a pretty common
>way to do high performance asynchronous network programming.
>
>Ryan

That's exactly what it's doing, it's normal.


> > sorry it's much faster than 10 times per second, my terminal is slow.
> > first that I posted is on
> > 1231356114, 376819
> > second
> > 1231356114, 378804
> > that is every ~2000 microseconds so ~500/s and that server is stable
> > 500fps, so it happens every frame.
> >
> > Kveri
> >
> > Kveri  wrote / napísal(a):
> >> I don't know if it is normal, but I can confirm that it's happening.
> >>
> >> recvfrom(4, 0xfff4ebb4, 4010, 0, 0xfff4fb60, 0xfff4eb9c) = -1 EAGAIN
> >> (Resource temporarily unavailable)
> >> gettimeofday({1231356114, 376819}, NULL) = 0
> >> gettimeofday({1231356114, 376846}, NULL) = 0
> >> gettimeofday({1231356114, 376873}, NULL) = 0
> >> gettimeofday({1231356114, 376900}, NULL) = 0
> >> gettimeofday({1231356114, 376928}, NULL) = 0
> >> gettimeofday({1231356114, 376953}, NULL) = 0
> >> gettimeofday({1231356114, 376976}, NULL) = 0
> >> select(5, [4], NULL, NULL, {0, 1000})   = 0 (Timeout)
> >> select(1, [0], NULL, NULL, {0, 0})      = 0 (Timeout)
> >> gettimeofday({1231356114, 377713}, NULL) = 0
> >> gettimeofday({1231356114, 377738}, NULL) = 0
> >> select(5, [4], NULL, NULL, {0, 1000})   = 0 (Timeout)
> >> select(1, [0], NULL, NULL, {0, 0})      = 0 (Timeout)
> >> gettimeofday({1231356114, 378711}, NULL) = 0
> >> gettimeofday({1231356114, 378738}, NULL) = 0
> >> recvfrom(4, 0xfff4ebb4, 4010, 0, 0xfff4fb60, 0xfff4eb9c) = -1 EAGAIN
> >> (Resource temporarily unavailable)
> >> gettimeofday({1231356114, 378804}, NULL) = 0
> >> gettimeofday({1231356114, 378831}, NULL) = 0
> >> gettimeofday({1231356114, 378855}, NULL) = 0
> >> gettimeofday({1231356114, 378878}, NULL) = 0
> >> gettimeofday({1231356114, 378902}, NULL) = 0
> >> gettimeofday({1231356114, 378925}, NULL) = 0
> >> gettimeofday({1231356114, 378949}, NULL) = 0
> >> select(0, NULL, NULL, NULL, {0, 1000})  = 0 (Timeout)
> >> select(1, [0], NULL, NULL, {0, 0})      = 0 (Timeout)
> >> gettimeofday({1231356114, 379714}, NULL) = 0
> >> gettimeofday({1231356114, 379739}, NULL) = 0
> >> recvfrom(4, 0xfff4ebb4, 4010, 0, 0xfff4fb60, 0xfff4eb9c) = -1 EAGAIN
> >> (Resource temporarily unavailable)
> >> gettimeofday({1231356114, 379803}, NULL) = 0
> >> gettimeofday({1231356114, 379829}, NULL) = 0
> >> gettimeofday({1231356114, 379855}, NULL) = 0
> >> ^C <unfinished ...>
> >> Process 31734 detached
> >>
> >> Maybe 10 times per second or so
> >>
> >> OS: Gentoo 64
> >> 2x Quad Xeon, 8GB RAM
> >> conn: 1GBit
> >>
> >> Kveri
> >>
> >> Pawel  wrote / napísal(a):
> >>
> >>> Hi,
> >>>
> >>> I'm starting new hlds process with -game cstrike etc. Normal clear CS
> >>> 1.6
> >>> server.
> >>> Next what i'm going to do is strace command on this process.
> >>>
> >>> So while using strace -p 3535353... I got many times:
> >>>
> >>> recvfrom(4, 0xfff43114, 4010, 0, 0xfff440c0, 0xfff430fc) = -1 EAGAIN
> >>> (Resource temporarily unavailable)
> >>>
> >>> It is normal?
> >>> My OS is Slamd64
> >>> and hardware:
> >>> 2x Xeon Quad-Core, 4GB RAM
> >>> Internet connection: 100mbit up/down
> >>>
> >>> Thanks
> >>> _______________________________________________
> >>> To unsubscribe, edit your list preferences, or view the list archives,
> >>> please visit:
> >>> http://list.valvesoftware.com/mailman/listinfo/hlds_linux
> >>>
> >>>
> >>>
> >>
> >> _______________________________________________
> >> To unsubscribe, edit your list preferences, or view the list archives,
> >> please visit:
> >> http://list.valvesoftware.com/mailman/listinfo/hlds_linux
> >>
> >>
> >
> > _______________________________________________
> > To unsubscribe, edit your list preferences, or view the list archives,
> > please visit:
> > http://list.valvesoftware.com/mailman/listinfo/hlds_linux
> >
>
>
>_______________________________________________
>To unsubscribe, edit your list preferences, or 
>view the list archives, please visit:
>http://list.valvesoftware.com/mailman/listinfo/hlds_linux


_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
http://list.valvesoftware.com/mailman/listinfo/hlds_linux

Reply via email to