Gnutella Forums

Gnutella Forums (https://www.gnutellaforums.com/)
-   General Gnutella Development Discussion (https://www.gnutellaforums.com/general-gnutella-development-discussion/)
-   -   Best way blocking, non-blocking, async, multiplexing (https://www.gnutellaforums.com/general-gnutella-development-discussion/92969-best-way-blocking-non-blocking-async-multiplexing.html)

kelsayfst July 23rd, 2009 07:40 AM

Best way blocking, non-blocking, async, multiplexing
 
What is the best way to create a gnutella client that use least threads as possible ex.(blocking, non-blocking, async, multiplexing)?

I creating a client in csharp.
I need alot of feedback about your opinions so I know which to go with this.:anxious:

arne_bab July 26th, 2009 10:14 PM

That's not that easy to answer. I know that Phex uses nonblocking IO.

Maybe you could begin by posting your thoughts about the different methods.

kelsayfst July 27th, 2009 06:37 PM

Why I ask? Dealing with the UltraPeer system. I don't want to keep starting new threads for every connections that I get when my client become an ultrapeer or not. So I know that non blocking and multiplexing is better, but with this I have to code alot more for this. And other words too many threads will slow your down your client. I want my client to save on cpu, memory, and etc. as much as possible.

arne_bab July 30th, 2009 12:43 AM

So you want the least thread intensive way of keeping the connections?

In that case, you could ask Gregor from Phex. He's implemented Nonblocking IO in Phex to archieve that goal, and he had a few more longterm ideas.

Just post your question to the Phex Development board, so he sees it:

- Development Open Discussion - Gnutella Forums

But my question was not "why?" - I asked about your thoughts on the different techniques.


All times are GMT -7. The time now is 06:43 AM.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
SEO by vBSEO 3.6.0 ©2011, Crawlability, Inc.

Copyright © 2020 Gnutella Forums.
All Rights Reserved.