2011/1/31 Ruben Van Boxem <[email protected]>:
> Op 31 jan. 2011 22:15 schreef "K. Frank" <[email protected]> het
> volgende:
>
>>
>> Hello Ruben (and Kai)!
>>
>> On Mon, Jan 31, 2011 at 3:17 PM, Kai Tietz <[email protected]>
>> wrote:
>> > 2011/1/31 Ruben Van Boxem <[email protected]>:
>> >> @Kai: I believe you were working on winpthreads. Would it be OK to
>> >> integrate
>> >> this into libc++ or should this be part of the mingw runtime regardless
>> >> and
>> >> be used/linked like that?
>> >
>> > I am fine, nevertheless license parts are missing in source (it will
>> > have ZPL 2.1 license, which is compatible to (L)GPL as fas as I know)
>> > and we need still some testing for it.
>> > We still don't have made here final decission, if winpthread will be
>> > fixed part of CRT, or if it will be published as separate option
>> > library. For some reason I prefer variant 1, but for shared scenario
>> > winpthread need then some improvments, as I dislike to have many
>> > instances of it within one application cause by using in EXE and DLLs.
>>
>
> I'll await your final OK then (i.e. Until you're happy with the code ;-)
>
>>
>> I imagine that this would also be true for clang / libc++, although this
>> is pure speculation on my part.
>>
>
> Well, Clang uses native Windows threads internally I think, but libc++ was
> written with pthreads in mind.
>
>> Pthreads is a good api, and people want to use it on windows
>> independent of std::thread. So if winpthreads is on track to become
>> part of mingw-w64, then there is not much benefit to providing a native
>> (i.e., non-pthreads) implementation of std::thread. It would be mostly
>> duplicative effort, and cause confusion by having two incompatible
>> implementations.
>>
>> Please let me know what you think makes sense.
>
> Well, i don't think C++ std::thread and a C winpthread need any
> compatibility. Maybe one implementation is more logical for gcc. I would
> like a native windows way for llvm/clang, it's just... cleaner ;-)
>
> Or: could a runtime check be made to enable a specific backend at startup,
> using Kai's code on Windows Server 2003-, and Frank's code on Vista+, with a
> nice pthread interface as you both have now? That's the best of both world
> IMHO...
>
> Thanks,
>
> Ruben
>
> ------------------------------------------------------------------------------
> Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)!
> Finally, a world-class log management solution at an even better price-free!
> Download using promo code Free_Logger_4_Dev2Dev. Offer expires
> February 28th, so secure your free ArcSight Logger TODAY!
> http://p.sf.net/sfu/arcsight-sfd2d
> _______________________________________________
> Mingw-w64-public mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
>
>
Well, to clarify things here. The winpthread (pthread layer) is
designed to work together with native windows threads, too. So both
layers can co-exists to each other without any issues as far as I can
see. A bare native implementation of threads on windows has some
advantages, as the are in general faster and lighter. Of more interest
here is, that the locking stuff of winpthread is designed for
platforms >= Windows 2000, and it allows thread-cancelation. Latter is
of course possible for native threads too, but the infrastructure for
this needs to be rebuild for each project using it.
So I don't see it as vain work to have native threading support in gcc
(and libc++/libstdc++), as the pthread layer is optional and we don't
force people to use it.
Regards,
Kai
--
| (\_/) This is Bunny. Copy and paste
| (='.'=) Bunny into your signature to help
| (")_(") him gain world domination
------------------------------------------------------------------------------
Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)!
Finally, a world-class log management solution at an even better price-free!
Download using promo code Free_Logger_4_Dev2Dev. Offer expires
February 28th, so secure your free ArcSight Logger TODAY!
http://p.sf.net/sfu/arcsight-sfd2d
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public