Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Some App tests leave closed windows alive after GC

Đã đóng
#666 3 bình luận 0 reaction 1 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

@SeoJCalive đang làm issue này rồi.

Từ ngày 27/10/2026.

  • #750 của @SeoJCalive — đã merge

Đánh giá

Issue này chưa được đánh giá.

Mô tả

Follow-up from #540 / #636.

While measuring #540 (full App run on Linux, f80ecb74, before #636, with my measuring hooks: a GC every 30 s and a count of live windows), windows that tests had already closed were still alive after a GC:

  • Up to 44 closed windows were still alive after a GC; at 4620 s, 44 of the 49 live windows had already been closed. Windows alive after a GC, open ones included, peaked at 62.
  • The working set rose from 345 MB to about 760 MB in the first ~21 min, then stayed between 742 and 929 MB until the end.
  • Run on their own 40 times, the main window and the close dialog were released after GC, so it isn't those two by themselves. I don't know yet which tests leave windows behind.

Since #636 this no longer costs much time, but the windows still hold memory, and it is worth knowing whether the app itself can keep a closed window alive.

What I'd do:

  1. Find the tests: after each test, run a GC and record which closed windows are still alive, over a full App run.
  2. Find what holds them: for those tests, check what keeps the window reachable (an event subscription, a service or view model, a test helper).
  3. Report before fixing: post the results here first, including whether the same thing can happen in the app or only in the tests, and then decide the fix.
Ngôn ngữ chính
C#
Star
3.6k
Fork
192
Merge trung bình
7 giờ 20 phút
Pull request đã merge (30 ngày)
320

Chuẩn bị môi trường

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của KnifeLemon/Filee

Tất cả issue của KnifeLemon/Filee

Issue tương tự

Thêm issue về C#

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.