Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[Bug] GPU 显存崩溃

Aperta
#4,887 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
42/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
typescript

Direzione di ricerca

Inizia riproducendo la crescita della memoria GPU sul sito ufficiale mentre passi da una demo e da una scheda all’altra in Chrome. Traccia il componente Vue e il contenitore canvas a cui fa riferimento vtableContain, insieme a onBeforeUnmount e onDeactivated; il lavoro è completato quando la memoria GPU viene liberata o diminuisce chiaramente dopo aver lasciato la pagina ed essere passati alla guida alla contribuzione.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug
Version

V1.22.0

Link to Minimal Reproduction

官网即可实现

Steps to Reproduce

在官网上用同一个标签下的不同demo切换
Image
然后GPU一直上涨(在浏览器中shift + Esc查看GPU)
停止不动一段时间后也还是不明显下降
然后点击【贡献指南】这个tab下的内容,之前的GPU占用也依旧存在
Image

Current Behavior

GPU显存未释放

Expected Behavior

GPU显存随页面的离开而主动清理

Environment
- OS:win11
- Browser:chrome 143.0.7499.170(正式版本) (64 位)
- Framework:vue@3
Any additional comments?

最开始是在1.22.0[+] Version(中级性能核显4G的主机)上也发现有进程突然卡住问题,然后表格没有正常显示而是展示成下图然后突然重新绘制:[/+][-] Version上也发现有进程突然卡住问题,然后表格没有正常显示而是展示成下图然后突然重新绘制:[/-]
Image
然后gemini这边分析可能是GPU进程崩溃重启

现在我用一种方式解决了这个问题,但是这应该是官方在release方法中可以处理的。

// 在onBeforeUnmount / onDeactivated 生命周期中清理内在的canvas
function clearCanvasCache() {
  const canvas = vtableContain.value?.querySelector('canvas');

  if (canvas) {
    console.log('清理Canvas缓存');
    canvas.width = 0;
    canvas.height = 0;
  }
}

希望这个方案能帮到其他人和我发生同样问题的人

Lingua principale
TypeScript
Stelle
3.7k
Fork
489
Merge medio
22h 1m
PR unite (30g)
17

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di VisActor/VTable

Tutte le issue di VisActor/VTable

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.