Message189322
| Author |
sbt |
| Recipients |
aod, sbt |
| Date |
2013年05月15日.22:46:51 |
| SpamBayes Score |
-1.0 |
| Marked as misclassified |
Yes |
| Message-id |
<51941054.2040904@gmail.com> |
| In-reply-to |
<CAP89RrdW3hxQh4Y9TvioUg5AiB==AAGT62O4GMfSAP0hSij45A@mail.gmail.com> |
| Content |
On 15/05/2013 11:33pm, Andre Dias wrote:
> But the example program has no races, no threads, nothing.
> empty() is returning TRUE even though qsize() is >0 (which actually is)
> And it happens almost every time I run that small example.
> I had read the module doc, and I know its an unreliable method, but man,
> the example program is too simple to fail
> Truth is I decided qsize() is more reliable and im using it in my programs,
> but man empty() problem is so ridiculous that I decided to submit here
If you assume everything is single-threaded then you would assume that
this is too simple to fail. But there *is* more than thread involved.
empty() and qsize() are basically redundant. You would almost certainly
be better off using get_noblock()/put_noblock() and catching Empty/Full. |
|
History
|
|---|
| Date |
User |
Action |
Args |
| 2013年05月15日 22:46:52 | sbt | set | recipients:
+ sbt, aod |
| 2013年05月15日 22:46:52 | sbt | link | issue17985 messages |
| 2013年05月15日 22:46:51 | sbt | create |
|