Сообщение Re: Вопрос про Poco library от 25.01.2017 18:19
Изменено 25.01.2017 18:22 regnar
Re: Вопрос про Poco library
Рокет саенс, берегите моск!
Вообще для поколения SO есть даже слайды:
Также всё расжевано в тестах для каждого класса, но это ж блин не гуглится...
class ClientServiceHandler
{
public:
ClientServiceHandler(StreamSocket& socket, SocketReactor& reactor):
_socket(socket),
_reactor(reactor),
_or(*this, &ClientServiceHandler::onReadable),
_ow(*this, &ClientServiceHandler::onWritable)
{
_reactor.addEventHandler(_socket, _or);
_reactor.addEventHandler(_socket, _ow);
_reactor.addEventHandler(_socket, _ot);
}
void onReadable(const NotificationPtr& pNf)
{
//...
}
void onWritable(const NotificationPtr& pNf)
{
_reactor.removeEventHandler(...); // write once
//...
}
private:
StreamSocket _socket;
SocketReactor& _reactor;
NObserver<ClientServiceHandler, ReadableNotification> _or;
NObserver<ClientServiceHandler, WritableNotification> _ow;
};
Вообще для поколения SO есть даже слайды:
Также всё расжевано в тестах для каждого класса, но это ж блин не гуглится...
Re: Вопрос про Poco library
Рокет саенс, берегите моск!
Вообще для поколения SO есть даже слайды:
Также всё расжевано в тестах для каждого класса, но это ж блин не гуглится...
class ClientServiceHandler
{
public:
ClientServiceHandler(StreamSocket& socket, SocketReactor& reactor):
_socket(socket),
_reactor(reactor),
_or(*this, &ClientServiceHandler::onReadable),
_ow(*this, &ClientServiceHandler::onWritable)
{
_reactor.addEventHandler(_socket, _or);
_reactor.addEventHandler(_socket, _ow);
}
void onReadable(const NotificationPtr& pNf)
{
//...
}
void onWritable(const NotificationPtr& pNf)
{
_reactor.removeEventHandler(...); // write once
//...
}
private:
StreamSocket _socket;
SocketReactor& _reactor;
NObserver<ClientServiceHandler, ReadableNotification> _or;
NObserver<ClientServiceHandler, WritableNotification> _ow;
};
Вообще для поколения SO есть даже слайды:
Также всё расжевано в тестах для каждого класса, но это ж блин не гуглится...