private void Perform(ZeroWaitEvent waitEvent)
		{
			syncEvent = waitEvent;
			syncEvent.AddReference();
			Perform();
		}
		private void RunContinuations()
		{
			if (continuationActions.Count == 0)
			{
				return;
			}

			var waitEvent = new ZeroWaitEvent(false);
			foreach (var action in continuationActions)
			{
				action.Perform(waitEvent);
			}
			waitEvent.WaitZeroReferences();
			waitEvent.Close();
		}