MCPcopy Create free account
hub / github.com/Tencent/mars / Clear

Method Clear

mars/comm/windows/SocketSelect/SocketSelect.cpp:135–154  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

133
134
135bool SocketSelectBreaker::Clear() {
136 ScopedLock lock(m_mutex);
137
138 if (!m_broken) return true;
139
140 char buf[128];
141 struct sockaddr src = {0};
142 int len = sizeof(src);
143 int ret = recvfrom(m_socket_r, buf, sizeof(buf), 0, &src, &len);
144 m_broken = false;
145
146 if (ret < 0) {
147 xerror2(TSF"recvfrom Ret:%_, errno:(%_, %_)", ret, errno, WSAGetLastError());
148 ReCreate();
149 return false;
150 }
151
152 // Ret = WSAGetLastError();
153 return true;
154}
155
156void SocketSelectBreaker::Close() {
157 if (m_socket_w != INVALID_SOCKET)

Callers 1

SelectMethod · 0.45

Calls

no outgoing calls

Tested by

no test coverage detected