processing / processing/processing4

Improve startup performance

未关闭
#1,429 0 条评论 1 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

paused
主要语言
Java
星标
494
派生
183
平均合并
4 小时 39 分钟
30 天内合并 PR
3

描述

PDE startup is slow because much of the initialization work happens on the main thread, blocking the application from becoming responsive.

PR #1300 explored moving several initialization tasks to background threads and demonstrated that this can significantly improve startup performance. The PR was ultimately closed in favor of revisiting startup concurrency with a more centralized approach, rather than introducing multiple ad-hoc threads in startup code.

Relevant quotes:

@tychedelia: “Have you considered using an ExecutorService instead of manually creating all the threads? That could provide better control or allow thread reuse particularly for tasks that are small.”

@catilac: “If there is a thread pool manager we can use to manage threads we should use that. I'd prefer we not introduce the use of low-level concurrency primitives on the app startup code paths.”

I'm opening this issue to capture these insights, so startup performance work can be revisited later.

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

首先审查 PR #1300 以及关于 ExecutorService 和共享线程池管理器的引用讨论。确定要采用的集中式启动并发方案,并明确哪些初始化任务可以移出主线程。完成的标准是:启动过程变得响应迅速,且不引入临时线程,同时为此次更改提供性能证据。

由索引模型根据 Issue 内容生成。

评估

技术栈
java
领域
desktop, performance
Issue 类型
功能
难度
5/5
预计耗时
一周以上
活跃度
停滞
描述清晰度
需要澄清
新手友好度
25/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。