예제 #1
0
	virtual void write(const TOut& message)
		{
			{
			boost::recursive_mutex::scoped_lock lock(mDisconnected->mutex);

			if (mDisconnected->isDisconnected)
				throw ChannelDisconnected();
			}

		mOutputCallbacks->onMessageReceived(message);
		}
예제 #2
0
	virtual void write(const TOut& in)
		{
		boost::mutex::scoped_lock lock(mMutex);

		if (mIsDisconnected)
			throw ChannelDisconnected();

		mCallbackScheduler->scheduleImmediately(
			boost::bind(
				mWriteCallback,
				in
				),
			"HalfChannel::write"
			);
		}