Re: [Pixil-devel] ask for help

[email protected] Fri, 10 Feb 2006 10:23:44 +0800
Newsgroups gmane.comp.web.viewml.devel
Message-ID <OFF0F7DEFC.D98013D8-ON48257111.000D23FD-48257111.000D7D6A@skyworksinc.com>
This is a multipart message in MIME format.
--===============0973608528==
Content-Type: multipart/alternative;
	boundary="=_alternative 000D7D6748257111_="

This is a multipart message in MIME format.
--=_alternative 000D7D6748257111_=
Content-Type: text/plain; charset="US-ASCII"

Hi Greg,


thanks for your advice, i think the author is want following effect 

during ipc client wait for the reply of request, if it have queued some
unsolicited packet, it want to make sock readable for ipc client, so that
it can exit immediately next time when call select(...), and the packet 
queued
will have opportunity to been processed immediately.

this effect is very important for the application when it's the client of 
IPC & Nano-X
at the same time.


but after some experiment, i regretlly find it don't have the effect!

i do as following step 
               (1) run ipc server (clserver)

               (2) the ipc client make request to server and  retrieve its 
reply, 
                   after that the ipc server has been blocked in 
select(...)
 
               (3) the ipc client directly write(sock, 0, 0), and find
                   the ipc server don't unblock from select,
 
               (4) then the ipc client call select, it also blocked in 
this
                   call 
 
or i misunderstand it.
 
thanks & regards 
tao





"Greg Haerr" <[email protected]> 
02/09/2006 01:49 AM

To
<[email protected]>
cc
<[email protected]>, <[email protected]>
Subject
Re: [Pixil-devel] ask for help






:     i guest the side effect of   wirte(sock, 0, 0)  is to make this sock 

: readable, so than when some packet queued, it make the 
: sock readable, so when client use select(...) call, it will return 
: immedialely, not blocked forever if no new packet in, and 
: have chance to get packet queued, if it right? 

I believe that the write is to trigger any pending selects
to unblock their threads/processes. 

Regards,

Greg




--=_alternative 000D7D6748257111_=
Content-Type: text/html; charset="US-ASCII"


<br><font size=2 face="sans-serif">Hi Greg,</font>
<br>
<br>
<br><font size=2 face="sans-serif">thanks for your advice, i think the
author is want following effect </font>
<br><font size=2 face="sans-serif"><br>
during ipc client wait for the reply of request, if it have queued some</font>
<br><font size=2 face="sans-serif">unsolicited packet, it want to make
sock readable for ipc client, so that</font>
<br><font size=2 face="sans-serif">it can exit immediately next time when
call select(...), and the packet queued</font>
<br><font size=2 face="sans-serif">will have opportunity to been processed
immediately.</font>
<br>
<br><font size=2 face="sans-serif">this effect is very important for the
application when it's the client of IPC &amp; Nano-X</font>
<br><font size=2 face="sans-serif">at the same time.</font>
<br>
<br>
<br><font size=2 face="sans-serif">but after some experiment, i regretlly
find it don't have the effect!</font>
<br>
<br><font size=2 face="sans-serif">i do as following step </font>
<br><font size=2 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;(1) run ipc server (clserver)</font>
<br>
<br><font size=2 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;(2) the ipc client make request to server and &nbsp;retrieve
its reply, </font>
<br><font size=2 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp;after that the ipc server has been blocked in
select(...)</font>
<br><font size=2 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp;</font>
<br><font size=2 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;(3) the ipc client directly write(sock, 0, 0), and find</font>
<br><font size=2 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp;the ipc server don't unblock from select,</font>
<br><font size=2 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;</font>
<br><font size=2 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;(4) then the ipc client call select, it also blocked in this</font>
<br><font size=2 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp;call </font>
<br><font size=2 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp;</font>
<br><font size=2 face="sans-serif">or i misunderstand it.</font>
<br><font size=2 face="sans-serif">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; </font>
<br><font size=2 face="sans-serif">thanks &amp; regards &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </font>
<br><font size=2 face="sans-serif">tao</font>
<br>
<br>
<br>
<br>
<br>
<table width=100%>
<tr valign=top>
<td width=40%><font size=1 face="sans-serif"><b>&quot;Greg Haerr&quot;
&lt;[email protected]&gt;</b> </font>
<p><font size=1 face="sans-serif">02/09/2006 01:49 AM</font>
<td width=59%>
<table width=100%>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">To</font></div>
<td><font size=1 face="sans-serif">&lt;[email protected]&gt;</font>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">cc</font></div>
<td><font size=1 face="sans-serif">&lt;[email protected]&gt;, &lt;[email protected]&gt;</font>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">Subject</font></div>
<td><font size=1 face="sans-serif">Re: [Pixil-devel] ask for help</font></table>
<br>
<table>
<tr valign=top>
<td>
<td></table>
<br></table>
<br>
<br>
<br><font size=2><tt>: &nbsp; &nbsp; i guest the side effect of &nbsp;
wirte(sock, 0, 0) &nbsp;is to make this sock <br>
: readable, so than when some packet queued, it make the <br>
: sock readable, so when client use select(...) call, it will return <br>
: immedialely, not blocked forever if no new packet in, and <br>
: have chance to get packet queued, if it right? <br>
<br>
I believe that the write is to trigger any pending selects<br>
to unblock their threads/processes. &nbsp;<br>
<br>
Regards,<br>
<br>
Greg<br>
<br>
<br>
</tt></font>
<br>
--=_alternative 000D7D6748257111_=--


--===============0973608528==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Pixil-devel mailing list
[email protected]
http://www.pixil.org/cgi-bin/mailman/listinfo/pixil-devel

--===============0973608528==--