<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Using epoll() For Asynchronous Network Programming</title>
	<atom:link href="http://kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/</link>
	<description>Yet Another Admin&#039;s blog</description>
	<lastBuildDate>Thu, 04 Feb 2010 07:58:50 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Jimmy the Geek</title>
		<link>http://kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/comment-page-1/#comment-231808</link>
		<dc:creator>Jimmy the Geek</dc:creator>
		<pubDate>Fri, 19 Mar 2010 05:28:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/#comment-231808</guid>
		<description>When the client closes the connection you will get a read of 0 bytes.</description>
		<content:encoded><![CDATA[<p>When the client closes the connection you will get a read of 0 bytes.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: addisu</title>
		<link>http://kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/comment-page-1/#comment-230917</link>
		<dc:creator>addisu</dc:creator>
		<pubDate>Fri, 19 Mar 2010 01:22:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/#comment-230917</guid>
		<description>Great write up.  I couldn&#039;t find a more detailed example than this.  However, how do you know when a client closes a connection?  It seems that you should be able to check your event against EPOLLHUP but the event number shown when a client closes is 0x5 while EPOLLHUP is defined as 0x10.  So is there some bit masking I have to do?

Thanks,
Addisu</description>
		<content:encoded><![CDATA[<p>Great write up.  I couldn&#8217;t find a more detailed example than this.  However, how do you know when a client closes a connection?  It seems that you should be able to check your event against EPOLLHUP but the event number shown when a client closes is 0&#215;5 while EPOLLHUP is defined as 0&#215;10.  So is there some bit masking I have to do?</p>
<p>Thanks,<br />
Addisu</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: slav0nic</title>
		<link>http://kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/comment-page-1/#comment-230832</link>
		<dc:creator>slav0nic</dc:creator>
		<pubDate>Fri, 19 Mar 2010 13:35:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/#comment-230832</guid>
		<description>занимательно, надо будет py-epoll погонять)
тем более сейчас джангу перевёл на асинхронный сервер который использует epoll В)

кстати если не ошибаюсь, результатом C10K problem стал сервер lighttpd</description>
		<content:encoded><![CDATA[<p>занимательно, надо будет py-epoll погонять)<br />
тем более сейчас джангу перевёл на асинхронный сервер который использует epoll В)</p>
<p>кстати если не ошибаюсь, результатом C10K problem стал сервер lighttpd</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James</title>
		<link>http://kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/comment-page-1/#comment-230781</link>
		<dc:creator>James</dc:creator>
		<pubDate>Fri, 19 Mar 2010 16:31:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/#comment-230781</guid>
		<description>actually &quot;fd&quot; is not &quot;used&quot; for epolling. The fd is passed separately to epoll_wait, the data structure is used for passing in any data the user requires. As it is a union structure writing to &quot;void *ptr&quot; will overwrite fd.

This data structure is useful for passing in data that may be useful to the user of the data. For example you can cache data that has been gathered by the connection previously and then store this in a structure which the void *ptr points to. When more data is ready you then have access to the previously stored data which you can add to with the further communication.

James</description>
		<content:encoded><![CDATA[<p>actually &#8220;fd&#8221; is not &#8220;used&#8221; for epolling. The fd is passed separately to epoll_wait, the data structure is used for passing in any data the user requires. As it is a union structure writing to &#8220;void *ptr&#8221; will overwrite fd.</p>
<p>This data structure is useful for passing in data that may be useful to the user of the data. For example you can cache data that has been gathered by the connection previously and then store this in a structure which the void *ptr points to. When more data is ready you then have access to the previously stored data which you can add to with the further communication.</p>
<p>James</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Prashanth</title>
		<link>http://kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/comment-page-1/#comment-230697</link>
		<dc:creator>Prashanth</dc:creator>
		<pubDate>Fri, 19 Mar 2010 06:32:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/#comment-230697</guid>
		<description>Hi,

Thanks for the info for epoll. These are helpful.

I had one question regarding the user data variable given as part of epoll_event structure. 
If only &quot;fd&quot; is used for epolling, why are u32/u64 and void pointers provided.

thanks,
Prashanth</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>Thanks for the info for epoll. These are helpful.</p>
<p>I had one question regarding the user data variable given as part of epoll_event structure.<br />
If only &#8220;fd&#8221; is used for epolling, why are u32/u64 and void pointers provided.</p>
<p>thanks,<br />
Prashanth</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mr Mister</title>
		<link>http://kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/comment-page-1/#comment-155421</link>
		<dc:creator>Mr Mister</dc:creator>
		<pubDate>Fri, 19 Mar 2010 19:08:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/#comment-155421</guid>
		<description>Sonny,
Just use google&#039;s translator. CLick this link to see a translation (should help a little):
http://translate.google.com/translate?hl=en&amp;sl=zh-CN&amp;u=http://zhoulifa.bokee.com/6081520.html&amp;sa=X&amp;oi=translate&amp;resnum=9&amp;ct=result&amp;prev=/search%3Fq%3Depoll%2Bserver%26complete%3D1%26hl%3Den%26client%3Dfirefox-a%26rls%3Dorg.mozilla:en-US:official%26sa%3DG</description>
		<content:encoded><![CDATA[<p>Sonny,<br />
Just use google&#8217;s translator. CLick this link to see a translation (should help a little):<br />
<a href="http://translate.google.com/translate?hl=en&amp;sl=zh-CN&amp;u=http://zhoulifa.bokee.com/6081520.html&amp;sa=X&amp;oi=translate&amp;resnum=9&amp;ct=result&amp;prev=/search%3Fq%3Depoll%2Bserver%26complete%3D1%26hl%3Den%26client%3Dfirefox-a%26rls%3Dorg.mozilla:en-US:official%26sa%3DG" rel="nofollow">http://translate.google.com/translate?hl=en&amp;sl=zh-CN&amp;u=http://zhoulifa.bokee.com/6081520.html&amp;sa=X&amp;oi=translate&amp;resnum=9&amp;ct=result&amp;prev=/search%3Fq%3Depoll%2Bserver%26complete%3D1%26hl%3Den%26client%3Dfirefox-a%26rls%3Dorg.mozilla:en-US:official%26sa%3DG</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sonny</title>
		<link>http://kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/comment-page-1/#comment-136844</link>
		<dc:creator>Sonny</dc:creator>
		<pubDate>Fri, 19 Mar 2010 08:29:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/#comment-136844</guid>
		<description>I found a website with an epoll example written by zhoulifa(zhoulifa@163.com). Its comments are in chinese, could anyone translate it/document it in english so it will be understood better? http://zhoulifa.bokee.com/6081520.html

Btw, why must it avoid nonblocking on function handle_io_on_socket?  It accessing db like MySQL nonblocking?</description>
		<content:encoded><![CDATA[<p>I found a website with an epoll example written by zhoulifa(zhoulifa@163.com). Its comments are in chinese, could anyone translate it/document it in english so it will be understood better? <a href="http://zhoulifa.bokee.com/6081520.html" rel="nofollow">http://zhoulifa.bokee.com/6081520.html</a></p>
<p>Btw, why must it avoid nonblocking on function handle_io_on_socket?  It accessing db like MySQL nonblocking?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: MunkeN</title>
		<link>http://kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/comment-page-1/#comment-134104</link>
		<dc:creator>MunkeN</dc:creator>
		<pubDate>Fri, 19 Mar 2010 13:42:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/#comment-134104</guid>
		<description>Eranga, yes.

OT: Great tutorial, even though you never declared events.
Well done Scoundrel.</description>
		<content:encoded><![CDATA[<p>Eranga, yes.</p>
<p>OT: Great tutorial, even though you never declared events.<br />
Well done Scoundrel.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Eranga</title>
		<link>http://kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/comment-page-1/#comment-111498</link>
		<dc:creator>Eranga</dc:creator>
		<pubDate>Fri, 19 Mar 2010 13:15:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/#comment-111498</guid>
		<description>Is it possible to use FD (file descriptor) meant for poll() with epoll()?</description>
		<content:encoded><![CDATA[<p>Is it possible to use FD (file descriptor) meant for poll() with epoll()?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nathan Mickulicz</title>
		<link>http://kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/comment-page-1/#comment-109547</link>
		<dc:creator>Nathan Mickulicz</dc:creator>
		<pubDate>Fri, 19 Mar 2010 20:26:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.kovyrin.net/2006/04/13/epoll-asynchronous-network-programming/#comment-109547</guid>
		<description>Not if you use the aio functions.</description>
		<content:encoded><![CDATA[<p>Not if you use the aio functions.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
