X512 pointed out that ServerLink is inherited by PortLink which is used by all windows, so the original change had the unintended effect of allocating another semaphore for every window, which isn't wanted. So, just use a static mutex here also.