yes, ThreadSleep will block the current thread and no other thread (in this case HotSwap) can do anything in that time, it is not recommended for long periods.
in your use case a timer is better, or Task.Delay…
here is some more info: c# - When to use Task.Delay, when to use Thread.Sleep? - Stack Overflow