mirror of
https://github.com/BeamMP/BeamMP-Server.git
synced 2025-07-04 00:36:14 +00:00
Copy set of shared ptrs
This commit is contained in:
parent
f323d50e34
commit
50549f3d1a
@ -48,7 +48,12 @@ std::weak_ptr<TClient> TServer::InsertNewClient() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void TServer::ForEachClient(const std::function<bool(std::weak_ptr<TClient>)>& Fn) {
|
void TServer::ForEachClient(const std::function<bool(std::weak_ptr<TClient>)>& Fn) {
|
||||||
for (auto& Client : mClients) {
|
decltype(mClients) Clients;
|
||||||
|
{
|
||||||
|
ReadLock lock(mClientsMutex);
|
||||||
|
Clients = mClients;
|
||||||
|
}
|
||||||
|
for (auto& Client : Clients) {
|
||||||
if (!Fn(Client)) {
|
if (!Fn(Client)) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user