cURL / Mailing Lists / curl-library / Single Mail


Re: How to get downloading progress using multi interface?

From: Emil Romanus <>
Date: Tue, 7 Aug 2007 23:40:46 +0200

2007/8/7, Richard Atterer <>:

> I actually meant "a 32-bit word" when I wrote "word". By your line of
> reasoning, the byte is the atomic unit - what makes you think so? It could
> be single bits... ;-) Actually, in most cases it is a "cache line" which
> changes ownership between the cores of a processor. Tracking individual
> bytes would cause too much overhead, so a cache line is much larger. It
> seems current Intel/AMD processors use a size of 32 or 64 bytes.
> This is getting a bit off-topic, and it's a complicated topic, maybe read
> <> or similar sources.

Thanks for that information, and sorry everyone else for going off-topic.
Hope the thread starter finds a solution.

Daniel, yes I know you don't need mutexes for the multi interface itself.
What I meant is that you most likely would need mutexes for modifying
external (out of libcurl, that is) data. Is this correct, or will libcurl
not run the progress callbacks in parallel, hence no need for mutexes at
all? I'm referring to when all easy handles modifies the same data (which is
probably not very common anyway...).
Received on 2007-08-07