Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 3601000
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 18, 20262026-05-18T20:33:59+00:00 2026-05-18T20:33:59+00:00

Please tell me what difference between pthread versions: VC2, VCE2 and VSE2? How to

  • 0

Please tell me what difference between pthread versions: VC2, VCE2 and VSE2? How to choose which of them I must use with Visual C++ Express 2010 for Mongoose webserver library?

Thank you!!!

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-18T20:33:59+00:00Added an answer on May 18, 2026 at 8:33 pm
    • VCE – MSVC dll with C++ exception handling
    • VSE – MSVC dll with structured exception handling
    • VC – MSVC dll with C cleanup code

    Which one you’d want to use with VC++ Express 2010 depends on how you want pthread clean up to be handled. If you’re linking this to the Mongoose webserver (which I’m not familiar with), I think you’ll want to use the exception handling model as that code is compiled with.

    The pthreads Win32 library goes into a fair bit of detail:

    Library naming

    Because the library is being built
    using various exception handling
    schemes and compilers – and because
    the library may not work reliably if
    these are mixed in an application,
    each different version of the library
    has it’s own name.

    Note 1: the incompatibility is really
    between EH implementations of the
    different compilers. It should be
    possible to use the standard C version
    from either compiler with C++
    applications built with a different
    compiler. If you use an EH version of
    the library, then you must use the
    same compiler for the application.
    This is another complication and
    dependency that can be avoided by
    using only the standard C library
    version.

    Note 2: if you use a standard C
    pthread*.dll with a C++ application,
    then any functions that you define
    that are intended to be called via
    pthread_cleanup_push() must be
    __cdecl.

    Note 3: the intention was to also name
    either the VC or GC version (it should
    be arbitrary) as pthread.dll,
    including pthread.lib and libpthread.a
    as appropriate. This is no longer
    likely to happen.

    Note 4: the compatibility number was
    added so that applications can
    differentiate between binary
    incompatible versions of the libs and
    dlls.

    In general: pthread[VG]{SE,CE,C}c.dll
    pthread[VG]{SE,CE,C}c.lib

    where: [VG] indicates the compiler
    V – MS VC, or G – GNU C

    {SE,CE,C} indicates the exception
    handling scheme SE – Structured EH,
    or CE – C++ EH, or C – no exceptions
    – uses setjmp/longjmp

    c – DLL compatibility number
    indicating ABI and API
    compatibility with applications built against
    any snapshot with the same compatibility number.
    See ‘Version numbering’ below.

    The name may also be suffixed by a ‘d’
    to indicate a debugging version of the
    library. E.g. pthreadVC2d.lib.
    Debugging versions contain additional
    information for debugging (symbols
    etc) and are often not optimised in
    any way (compiled with optimisation
    turned off).

    For example:
    pthreadVSE.dll (MSVC/SEH)
    pthreadGCE.dll (GNUC/C++ EH)
    pthreadGC.dll (GNUC/not dependent on
    exceptions) pthreadVC1.dll (MSVC/not
    dependent on exceptions – not binary
    compatible with pthreadVC.dll)
    pthreadVC2.dll (MSVC/not dependent on
    exceptions – not binary compatible
    with pthreadVC1.dll or pthreadVC.dll)

    The GNU library archive file names
    have correspondingly changed to:

    libpthreadGCEc.a libpthreadGCc.a

    If you want to see what the differences are for each of these clean up models, search for “__CLEANUP” in the pthreads Win32 source (there are only a few places where the different clean up models come into play).

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Please tell me what difference between pthread versions: VC2, VCE2 and VSE2? How to
Please tell me the difference between test.length and [test length] ? Which is more
Can any one please tell me the difference between target and currenttarget in flex?
Can somebody please tell, what's the difference between the following two statements: TimeZone.getTimeZone(America/New_York) and
could anyone please tell me, where in Javascript the difference between MyClass.prototype = new
Please tell me the difference between stack and heap with respect to below code
Can somebody please tell me whether there is any difference between SPML and WSDL?
can you please tell me what is the difference between webservice and webapplication.
Could you please tell what is the difference between a WCF client and a
Hey, can anyone please tell me, what are difference between Dom parser and Xerces

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.