同步操作将从 sulayman_tien/poco 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
//// SocketNotifier.cpp//// Library: Net// Package: Reactor// Module: SocketNotifier//// Copyright (c) 2005-2006, Applied Informatics Software Engineering GmbH.// and Contributors.//// SPDX-License-Identifier: BSL-1.0//#include "Poco/Net/SocketNotifier.h"#include "Poco/Net/SocketReactor.h"#include "Poco/Net/SocketNotification.h"namespace Poco {namespace Net {SocketNotifier::SocketNotifier(const Socket& socket):_socket(socket){}SocketNotifier::~SocketNotifier(){}void SocketNotifier::addObserver(SocketReactor* pReactor, const Poco::AbstractObserver& observer){_nc.addObserver(observer);ScopedLock l(_mutex);if (observer.accepts(pReactor->_pReadableNotification))_events.insert(pReactor->_pReadableNotification.get());else if (observer.accepts(pReactor->_pWritableNotification))_events.insert(pReactor->_pWritableNotification.get());else if (observer.accepts(pReactor->_pErrorNotification))_events.insert(pReactor->_pErrorNotification.get());else if (observer.accepts(pReactor->_pTimeoutNotification))_events.insert(pReactor->_pTimeoutNotification.get());}void SocketNotifier::removeObserver(SocketReactor* pReactor, const Poco::AbstractObserver& observer){_nc.removeObserver(observer);ScopedLock l(_mutex);EventSet::iterator it = _events.end();if (observer.accepts(pReactor->_pReadableNotification))it = _events.find(pReactor->_pReadableNotification.get());else if (observer.accepts(pReactor->_pWritableNotification))it = _events.find(pReactor->_pWritableNotification.get());else if (observer.accepts(pReactor->_pErrorNotification))it = _events.find(pReactor->_pErrorNotification.get());else if (observer.accepts(pReactor->_pTimeoutNotification))it = _events.find(pReactor->_pTimeoutNotification.get());if (it != _events.end())_events.erase(it);}namespace{static Socket nullSocket;}void SocketNotifier::dispatch(SocketNotification* pNotification){pNotification->setSocket(_socket);pNotification->duplicate();try{_nc.postNotification(pNotification);}catch (...){pNotification->setSocket(nullSocket);throw;}pNotification->setSocket(nullSocket);}} } // namespace Poco::Net
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。