Boost logo

Boost Users :

From: Sliwa, Przemyslaw (London) (Przemyslaw_Sliwa_at_[hidden])
Date: 2005-04-22 10:00:08


Volodya,

Thanks for answer.
Right I have forgotten to put the subject->it was stupid.
But the try_mutex and scoped_tyy_lock cause that both processors are
used properly.

Can you explain?

Thank you in advance.

Pshemek

-----Original Message-----
From: boost-users-bounces_at_[hidden]
[mailto:boost-users-bounces_at_[hidden]] On Behalf Of Vladimir Prus
Sent: 22 April 2005 13:13
To: boost-users_at_[hidden]
Subject: [Boost-users] Mutexes (Was: (no subject))

Hi Przemyslaw,

(btw, it's better to give some subject to postings).

> I have found a very strange behaviour (for me at least!) in
> boost.Thread.
> The same dummy code:
> boost::mutex M;
>
> void functionA(int j)
>
> {
>
> for(int i=0; i<j; ++i)
>
> {
>
> boost::mutex::scoped_lock lock(M);

And it would be good if the code was properly indented.

>
> sqrt(static_cast<double>(i));

> void functionB(int j)
>
> {
>
> for(int i=0; i<j; ++i)
>
> {
>
> boost::mutex::scoped_lock lock(M);
.....
> If we do not lock the mutex then both processors are used on 100%.
> However, in case the line is uncommented (we lock the mutex) only one
> processor is used.

If you lock the mutex, then only one thread can be inside loop body at
the
moment. Since the code outside of mutex is very small, most of the time
only one thread will be running. So, it's reasonable that OS uses just
one
processor.

- Volodya

_______________________________________________
Boost-users mailing list
Boost-users_at_[hidden]
http://lists.boost.org/mailman/listinfo.cgi/boost-users
--------------------------------------------------------

If you are not an intended recipient of this e-mail, please notify the sender, delete it and do not read, act upon, print, disclose, copy, retain or redistribute it. Click here for important additional terms relating to this e-mail. http://www.ml.com/email_terms/
--------------------------------------------------------


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net