Commit graph

14 commits

Author SHA1 Message Date
Alex Shinn
20c62ffe4a The global ABI error object needs to be an immediate, since if
the ABI is incompatible we can't even necessarily refer to a
global from within the bad library.
2013-02-10 16:38:18 +09:00
Alex Shinn
3e241e3a3e Simplifying scheduler case where the only available thread is waiting on a port.
Instead of a one-time poll, we just use the default small sleep + loop case,
so we use the normal poll next time through the scheduler.
This fixes a potential case where a lone thread waiting on I/O could hang,
discovered by Lorenzo.
2013-01-14 17:59:40 +09:00
Alex Shinn
da328bb88c Another thread patch from Lorenzo. If we're reduced to scheduling
a single thread blocked on an fd and the poll fails, optimistically
unblock it (so it can block again naturally), instead of just running
it still in a wait status.
2013-01-06 00:22:54 +09:00
Alex Shinn
f209c38f4f sexp_blocker can block on fileno objects 2012-12-31 00:25:13 +09:00
Alex Shinn
35bfe1702b thread-sleep! and other timeouts now accept ratios 2012-09-17 15:11:05 +09:00
Alex Shinn
21d4fc670c fixing bug in scheduler queueing paused threads 2012-09-16 15:08:19 +09:00
Alex Shinn
fcaa906954 Another patch from Lorenzo for non-fixnum thread timeouts. 2012-09-03 20:17:46 +09:00
Alex Shinn
4bd428da9e Unblock the current thread if it was waiting on an fd with activity.
Prevents useless extra polling slowing down the process as noted in issue #144.
2012-08-25 12:49:34 +09:00
Alex Shinn
b40370be52 thread-join! now returns the result or raises the exception of the joined thread 2012-08-15 21:23:39 +09:00
Alex Shinn
51c12f6115 If the only available thread is paused and we need to schedule it, remove it from the paused list.
Fixes issue #138 - otherwise the thread can be revived in the repl after we sleep.
2012-08-13 13:49:48 +00:00
Alex Shinn
cdb8760fcc Need to unpause a paused thread if we want to terminate it. 2012-07-21 17:05:05 +09:00
Alex Shinn
057f6b2dea Removing debug code not meant for commit. 2012-05-19 07:54:07 +09:00
Alex Shinn
a979e6ffcf bugfix for reading non-ascii chars 2012-05-19 07:52:17 +09:00
Alex Shinn
85a7efc003 automatically making sockets non-blocking on accept 2012-05-14 08:37:45 -04:00