Is thread-switching supported by Nanos4?

Yes. Nanos4 uses user-level threads called nano-threads that allows to easily migrate tasks from one kernel thread to another.