Commit graph

107 commits

Author SHA1 Message Date
Martin Nowak
dcee2cd9e4 Merge pull request #2664 from MartinNowak/master
add initOnce
2015-01-20 10:28:09 +01:00
David Nadlinger
9c26b67f4f Merge pull request #2873 from MartinNowak/schedulerNothrow
mark rest of std.concurrency Scheduler as nothrow
2015-01-15 18:12:17 +01:00
Martin Nowak
78ab1a5ebd Merge pull request #2645 from complexmath/addMessageFreeList
Add message free list to std.concurrency
2015-01-15 09:50:09 +01:00
Martin Nowak
0a33966a30 mark rest of std.concurrency Scheduler as nothrow
- works now that core.sync.* is completely nothrow too
2015-01-15 09:47:54 +01:00
Martin Nowak
f2e5228d60 Merge pull request #2644 from complexmath/fixFiberScheduler
Fix a bug with FiberScheduler
2015-01-15 09:37:32 +01:00
Martin Nowak
ac84cbeb55 add initOnce
- uses double-checked locking (the correct one)

- minimal overhead and simple API

- default mutex is shared among all instances
2015-01-05 02:46:55 +01:00
Geod24
fc132046bf Remove deprecated and undocumented hasLocalAliasing, hasRawLocalAliasing, hasLocalObjects 2014-12-21 22:14:31 +01:00
Brad Roberts
9388f8bfee disable fiber test on win32 2014-12-05 01:59:13 +00:00
Kevin Lamonte
0781866902 code formatting, use sink
update docs, style, use thread:id scheme

use MessageBox hash, remove running thread

use mbox address

moved import
2014-11-28 11:04:42 -08:00
Martin Nowak
354544b6bb nothrow for Schedulder
- require nothrow for thisInfo, yield

- make Condition methods nothrow
2014-11-23 00:41:57 +01:00
kai
a2d0626b1e Fix deprecation warning in std.concurrency.
Replace false with Fiber.Rethrow.no to remove the warning.
2014-11-22 15:31:38 +01:00
k-hara
b80083f198 fix property enforcement 2014-11-20 22:37:57 +09:00
Sean Kelly
40be882d40 Added freelist for messages 2014-10-27 16:37:57 -07:00
Sean Kelly
a843136b2c FiberScheduler wasn't resetting notified state when Condition.wait completed. 2014-10-27 13:33:12 -07:00
Dicebot
8fbad993ce Add Generator to std.concurrency
Generator is an extension to a Fiber that yields return values of specific type
2014-10-21 11:47:21 -07:00
Sean Kelly
519ce8cef6 Make std.concurrency compatible with fibers
https://d.puremagic.com/issues/show_bug.cgi?id=12090

With this commit fibers can have own message boxes and act similar
to threads in that regard.
2014-10-21 11:47:21 -07:00
Geod24
0fb95b8c27 Usage of WEB macro for License everywhere 2014-10-15 11:30:42 +02:00
Ferdinand Majerech
a622ccc2a0 (trivial) (ddoc) more descriptive std.concurrency doc.
`ownerTid`/`childTid` are more descriptive/obvious when reading than just `tid` here.
2014-10-08 15:59:41 +02:00
Geod24
7100047473 Replace enforceEx with enforce where it's possible 2014-08-25 12:18:02 +02:00
Yazan S. Dabain
a81f6200cf [Trivial] Fix documentation typos 2014-02-28 21:08:19 +02:00
k-hara
b391b2ec9f Convert to new alias syntax 2014-02-11 15:27:05 +09:00
Daniel Murphy
a656f26e9e Remove use of automatic adjacent string literal concatenation from phobos 2014-01-20 03:42:21 +11:00
Martin Nowak
a0c7d83443 enforce thisTid was called before calling receive
- Simply calling receive in main as stated by the comment
  makes no sense, as nobody could send a message.
2013-09-30 21:45:13 +02:00
k-hara
87bd3315db fix Issue 10230 - Duplicated buttons for runnable examples 2013-07-16 00:45:48 +09:00
Daniel Murphy
c431176b05 Call thisTid to initialize first thread's message box, bypassing checks against setting thread-local variables from a shared static constructor. 2013-07-01 00:18:28 +10:00
Sean Kelly
429b12b185 fixed receiveTimeout to not wait beyond the specified limit in the event of multiple internal waits 2013-04-30 13:13:20 -07:00
Jonathan M Davis
e09940470d Merge pull request #1176 from jmdavis/deprecated
Remove some undocumented, deprecated functions which are slated for removal.
2013-03-25 03:47:50 -07:00
Alex Rønne Petersen
9cb2065fe6 Merge pull request #1092 from AndrejMitrovic/Fix6224
Issue 6224 - Add ownerTid() property.
2013-03-08 09:53:48 -08:00
jmdavis
8f7f6d69ac Remove some undocumented, deprecated functions which are slated for removal.
These have been deprecated for a while, but there was some balking
(primarily from Andrei IIRC) at actually removing them when they were
slated for removal, so they were instead made undocumented and slated
for removal after yet another 6 months or so. So, now that that time has
passed, here's another attempt to actually remove them.
2013-03-06 22:19:34 -08:00
Andrej Mitrovic
59e894698f Remove Tid.send() duplicated function, as UFCS function can take its place. 2013-01-23 16:53:26 +01:00
Andrej Mitrovic
aaa6854eb7 Fixes Issue 9373 - Add deprecation messages to Phobos. 2013-01-23 02:44:08 +01:00
Andrej Mitrovic
dd9b31ccae Fixes Issue 6224 - Add ownerTid() property. 2013-01-23 00:55:23 +01:00
Andrej Mitrovic
8592a34d4b Fixes Issue 8078 - receiveOnly exceptions should be informative. 2013-01-09 16:32:27 +01:00
SHOO
aa1f8351b9 rename Spawnable to isSpawnable 2012-11-18 18:48:49 +09:00
SHOO
10f1e807b7 replaced tabs to spaces 2012-11-15 23:50:26 +09:00
SHOO
f909a18dca fix Issue 9005 - std.concurrency.spawn should allow void delegate(Args) shared for new Tid
http://d.puremagic.com/issues/show_bug.cgi?id=9005
2012-11-15 23:30:30 +09:00
alexrp
b202180295 Remove all uses of sizediff_t in favor of ptrdiff_t. 2012-10-15 04:24:09 +02:00
jmdavis
14c9a0ae44 Undocumented September deprecations.
The deprecated stuff scheduled for removal in September is now
undocumented and marked (in a normal comment) for removal in March 2013.
2012-09-30 04:15:56 -07:00
jmdavis
d283d5735c Move August removals to September.
Several deprecated items were listed for removal in August, but it's
looking likely that 2.060 will come out in August, and I'd prefer not to
have them removed for 2.060 given how many items are already in the
changelog, and they're already deprecated, so it'll only affect people
compiling with -d either way. So, I'm changing the ddoc comments to say
September instead of August. They'll be removed in 2.061.
2012-07-23 23:11:07 -07:00
nazriel
dc408e6ff4 runnable examples - std.concurrency 2012-07-15 21:50:31 +00:00
alexrp
539134396a Kill some public imports of core.sync.* in std.concurrency. 2012-05-02 04:46:54 +02:00
Daniel Kolesa
d2388cd39a Fix a bug with shadowing declaration in std.concurrency. 2012-03-08 22:51:05 -08:00
k-hara
66e13b2c27 Revert "Revert "Merge pull request #120 from 9rnsr/rvalue-struct-literal""
This reverts commit 8a6bfd2529.
2012-02-21 21:03:01 +09:00
Walter Bright
8a6bfd2529 Revert "Merge pull request #120 from 9rnsr/rvalue-struct-literal"
This reverts commit d780d9df0f, reversing
changes made to c6ae86ca4f.
2012-02-20 19:43:12 -08:00
Walter Bright
d780d9df0f Merge pull request #120 from 9rnsr/rvalue-struct-literal
Supplemental changes of dmd/pull/41
2012-02-20 19:24:39 -08:00
jmdavis
88faac2475 Moved removals of deprecated symbols from July to August.
The release didn't happen in January, so July isn't a 6 month
deprecation period anymore.
2012-02-11 02:48:49 -08:00
Sean Kelly
7be98ef0ac added 'scope' to mbox.get() param list. 2012-02-09 14:12:51 -08:00
k-hara
d3e1992d86 Add overloads for struct literal and construction that now make rvalue. 2012-01-23 23:41:45 +09:00
jmdavis
60a0a1c9e7 Deprecated stuff that was scheduled for deprecation in January 2012. 2012-01-02 22:52:36 -08:00
David Simcha
e8e92f3f99 Merge pull request #362 from klickverbot/receive-function
Issue 7092 - std.concurrency.receive does not accept free functions.
2011-12-18 10:09:20 -08:00