On 2011-03-31 19:26:45 +0300, Andrei Alexandrescu said:

On 3/31/11 6:35 AM, Max Klyga wrote:
snip

I think that would be a good contribution that would complement Jonas'. You'll need to discuss cooperation with him and at best Jonas would agree to become a mentor.

Jonas agreed to become a mentor if I make this proposal strong/interesting enough.

I've posted a couple of weeks earlier how I think that could work with ranges: the range maintains the asynchronous state and has a queue of already-available buffers received. The network traffic occurs in a different thread; the range throws requests over the fence to libcurl and libcurl throws buffers over the fence back to the range. The range offers a seemingly synchronous interface:

foreach (line; byLineAsync("http://d-programming-language.org";))
{
    ... use line ...
}

except that the processing and the fetching of data occur in distinct threads.

I thought about the same.

Server-side code such as network servers etc. would also be an interesting topic. Let me know if you're versed in the likes of libev(ent).

I have no experience with libev/libevent, but I see no problem working with either, after reading some exapmles or/and documentation.

Reply via email to