use TMap for subscription maps (#341)

* use TMap for subscription maps

* refactor

* correction
This commit is contained in:
Evgeny Poberezkin
2022-03-28 18:49:17 +01:00
committed by GitHub
parent 6ef6bedc03
commit cd22e06b3a
4 changed files with 76 additions and 60 deletions
+1 -1
View File
@@ -137,7 +137,7 @@ runClientTransport th@THandle {sessionId} = do
clientDisconnected :: (MonadUnliftIO m, MonadReader Env m) => Client -> m ()
clientDisconnected c@Client {subscriptions, connected} = do
atomically $ writeTVar connected False
subs <- readTVarIO $ TM.tVar subscriptions
subs <- readTVarIO subscriptions
mapM_ cancelSub subs
cs <- asks $ subscribers . server
atomically . mapM_ (\rId -> TM.update deleteCurrentClient rId cs) $ M.keys subs