| 153 | } |
| 154 | |
| 155 | void Server::CleanUpProcess(PID pid) |
| 156 | { |
| 157 | { |
| 158 | std::lock_guard<std::mutex> lock(chan_mtx_); |
| 159 | auto it = client_chans_.find(pid); |
| 160 | if (it == client_chans_.end()) return; |
| 161 | // Could cause Execute() cannot find the channel, |
| 162 | // because scheduler_->RecvEvent(e) is asynchronous. |
| 163 | client_chans_.erase(it); |
| 164 | } |
| 165 | XINFO("client process " FMT_PID " closed", pid); |
| 166 | } |
| 167 | |
| 168 | void Server::ProcessTerminate(PID pid) |
| 169 | { |
no outgoing calls
no test coverage detected