xtermjs / xterm.js

A terminal for the web
https://xtermjs.org/
MIT License
17.33k stars 1.61k forks source link

resize and serialize blocks gui #4951

Open STofone opened 6 months ago

STofone commented 6 months ago

Web gui blocks when resize or serialize big data. Is it possible to use Web Worker to process them.

jerch commented 6 months ago

Is it possible to use Web Worker to process them.

In theory yes, but currently impractical. Both actions operate on the whole terminal state, which is hard to move into a webworker for just those actions. Also the terminal would need a STOP state, while those actions are running. Currently the implementation hassles for that outweigh the benefit. There are several ideas to overcome this limitation, e.g. by moving the whole VT state handling into a worker. But again the impl effort is huge so no one has looked into that yet beside some early POC tests.

tisilent commented 6 months ago

Making some tool tips may have better effects. 😃 The cost of data transmission with web worker..... 👻