httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Paul Sutton <>
Subject RE: more multithread unsafe stuff
Date Fri, 19 Dec 1997 16:31:22 GMT
On Fri, 19 Dec 1997, Ben Hyde wrote:
> There is a frightening note in the Microsoft documentation about how
> many C runtime systems they have.  The note has a title like "Problems
> with CRT"  I find it by looking up the terms "problems" and "CRT".  It's
> worth reading, but the short form is that each of the three has it's own
> globals (file table, memory allocator, etc) and it is easy to find
> yourself in a process with more than one of them in use at the same
> time. 

The three runtimes are: single threaded (LIBC), multithreaded (LIBCMT) and
multithreaded-DLL (MSCVRT). All Apache components use the
multithreaded-DLL runtime. You can get into trouble if you compile parts
with different runtimes, but the linker will bitch about it (unless you do
/NODEFAULTLIB or otherwise fiddle with it). Apache doesn't fiddle, and
links without warnings.

> One of the libraries is "thread safe,"  I havent' checked to see what
> Apache is configured to use today.  Even there the time functions listed
> above aren't safe. 
> So, this is a problem today on windows.

Can you provide some more information? I was under the impression that
both the MT libraries provided 100% thread-safe C runtime calls. If not
surely there would be problems throughout windows which uses MT all over
the place?


View raw message