Implements an intended part of the thread_sync API: If an empty slice of operations is passed to thread_sync along with a timeout Duration, thread_sync will just sleep the specified amount of time, allowing for easy and efficient sub-second sleeping.
Addresses #98
Alternatively, we could pass a sleep operation to a local stack word that will never awaken, and thus use timeout for the same effect. This would make the in-kernel implementation slightly simpler, but would make sleeping more expensive and involve more coordination.
Implements an intended part of the thread_sync API: If an empty slice of operations is passed to thread_sync along with a timeout Duration, thread_sync will just sleep the specified amount of time, allowing for easy and efficient sub-second sleeping.
Addresses #98
Alternatively, we could pass a sleep operation to a local stack word that will never awaken, and thus use timeout for the same effect. This would make the in-kernel implementation slightly simpler, but would make sleeping more expensive and involve more coordination.