class MailboxExecutorImpl implements MailboxExecutor {

	@Override
	public boolean tryYield() {
		Optional<Mail> optionalMail = mailbox.tryTake(priority);
		if (optionalMail.isPresent()) {
			try {
				optionalMail.get().run();
			} catch (Exception ex) {
				throw WrappingRuntimeException.wrapIfNecessary(ex);
			}
			return true;
		} else {
			return false;
		}
	}

	public  MailboxExecutorImpl(@Nonnull TaskMailbox mailbox, int priority, StreamTaskActionExecutor actionExecutor);
	public  MailboxExecutorImpl(@Nonnull TaskMailbox mailbox, int priority, StreamTaskActionExecutor actionExecutor, MailboxProcessor mailboxProcessor);

}