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 6603375
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 25, 20262026-05-25T19:00:04+00:00 2026-05-25T19:00:04+00:00

Many classes in the c++ standard library now have move constructors, for example –

  • 0

Many classes in the c++ standard library now have move constructors, for example –

thread::thread(thread&& t)

But it appears that std::mutex does not. I understand that they can’t be copied, but it seems to make sense to be able to return one from a “make_mutex” function for example. (Not saying it’s useful, just that it makes sense)

Is there any reason why std::mutex doesn’t have a move constructor?

  • 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-25T19:00:05+00:00Added an answer on May 25, 2026 at 7:00 pm

    Well… mainly because I don’t think they should move. Literally.

    In some OS-es a mutex might be modeled as a handle (so you could copy them) but IIRC a pthreads mutex is manipulated in-place. If you are going to relocate that, any threadsafety is going fly right out of the window (how would the other threads know that the mutex had just changed it’s memory address…)?

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

Sidebar

Related Questions

Many classes in Cocoa/Cocoa Touch have the NS prefix. What does it mean?
I'm working on a large project (for me) which will have many classes and
What I have? I have an abstract class QueryExecutor and many classes inheriting from
I'm making a shopping cart app in Google App Engine. I have many classes
I have a scenario that i want to add some standard properties to my
I'm implementing a standard as an object oriented library in Java. Standard includes many
I have 2 domain classes which are mapped by many-to-many relationship. I followed the
Suppose that I am using a library X that specifies for example that exception.BaseError
I read an article which said: Providing instances for the many standard type-classes [Functors]
There are many classes having this provider suffix. (Data,membership,modelmetadata,...). When should be a class

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.