npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@zimtsui/freeseq

v0.0.9

Published

为了在前端用时序图展示后端多线程任务的进度,FreeSeq 用于在后端向前端实时传输线程 fork join 时间。

Readme

FreeSeq

为了在前端用时序图展示后端多线程任务的进度,FreeSeq 用于在后端向前端实时传输线程 fork join 时间。

Concepts

  • 每一个 Thread 代表前端时序图中的每一条生命线。
  • 每一个 Worker 代表后端的一个协程。

每个时刻,每个 Worker 在且仅在一个 Thread 上工作。

  • freeseq.fork 用于将当前 Worker 所在的 Thread 分叉出一个新的 Thread

    这在前端时序图中表现为一条新的生命线以及一条从当前生命线指向新生命线的消息线。

  • freeseq.join 用于将另一个 Thread 聚合到当前 Worker 所在的 Thread 上。

    这在前端时序图中表现为另一条生命线从此刻开始进入静息状态以及一条从它指向当前生命线的消息线。

  • Worker.exec 使当前 Worker 离开所在 Thread 前往另一个 Thread 去工作。

    这在前端时序图中表现为从此刻开始当前生命线进入静息状态,另一条生命线从此刻开始进入活跃状态。

FreeSeq 只不过是 onforkonjoin 监听器的一个 wrapper。如果创建两个 FreeSeq 实例,它们获取到的线程状态是共享的。

PromiseLike

如果一个函数的返回值类型是 PromiseLike,那么表示其有可能同步地抛出异常。