At the moment, the structure view related commands are executed on the main message processing thread, which means that all other lsp messages are blocked while a structure view command is in progress. We need to switch this over to a separate thread pool, much in the same way as, for example, the language server uses a separate thread pool to do the real work when lsp messages require some processing.