awesome-repositories.com
المدونة
MCP
awesome-repositories.com

اكتشف أفضل مستودعات المصادر المفتوحة باستخدام بحث مدعوم بالذكاء الاصطناعي.

استكشفعمليات بحث منسقةبدائل مفتوحة المصدربرمجيات ذاتية الاستضافةالمدونةخريطة الموقع
المشروعحولكيفية ترتيب النتائجالصحافةخادم MCP
قانونيالخصوصيةالشروط
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
GoogleChromeLabs avatar

GoogleChromeLabs/comlink

0
View on GitHub↗
12,715 نجوم·429 تفرعات·TypeScript·Apache-2.0·8 مشاهدات

Comlink

Comlink is a remote procedure call library that transforms message-based communication into asynchronous function calls between the main thread and web workers. It provides a proxy-based interface that allows multiple threads to interact with a single object instance without manual message handling.

The project enables the execution of functions across separate browser windows, iframes, and web workers, making external calls behave like local asynchronous operations. It supports the transfer of non-cloneable data through custom serialization handlers and allows for the movement of ownership for transferable objects to avoid data cloning.

The library also includes mechanisms for resource management, such as proxy lifecycle detachment to trigger garbage collection and finalizer cleanup logic.

Features

  • Proxy-Based Interfaces - Uses JavaScript Proxy objects to intercept method calls and wrap them in asynchronous messages sent across a channel.
  • Complex Data Serialization - Transfers non-cloneable data across thread boundaries using custom serialization handlers.
  • Remote Procedure Execution - Allows executing functions on a different thread as if they were local asynchronous operations.
  • Cross-Thread - Provides a serialization layer for transferring non-cloneable data and transferable objects across thread boundaries.
  • Remote Object Proxies - Provides proxies that forward method calls to remote worker targets and return promises.
  • Background Thread Dispatchers - Routes heavy tasks to background workers to keep the main thread responsive.
  • Browser Function Invocations - Invokes functions and objects on a web worker from the main thread using asynchronous interfaces.
  • Main Thread Offloading - Optimizes browser performance by offloading heavy computations to background threads to maintain a smooth UI.
  • MessageChannel Bridges - Uses the browser MessageChannel API to enable bidirectional communication between workers and iframes.
  • Complex Object Serializers - Provides custom serialization handlers to transfer non-cloneable complex objects across thread boundaries.
  • WebWorker RPC Libraries - Transforms message-based communication into asynchronous function calls between the main thread and web workers.
  • Remote Object Proxies - Passes a proxy of a value instead of a copy to allow multiple threads to interact with a single object instance.
  • Embedded and Browser Bridge Protocols - Facilitates communication between isolated execution environments like iframes and browser windows.
  • Remote Promise Messaging - Implements a messaging system that maps remote responses to local promises using unique request identifiers.
  • Proxy-Based Shared State - Enables multiple threads to interact with a single object instance using proxies instead of copying data.
  • Ownership Transfer - Passes ownership of large buffers via the postMessage transfer list to avoid expensive data cloning.
  • Cross-Window Communication Layers - Establishes communication channels between separate browser windows or iframes using RPC patterns.
  • Web Worker Management - Simplifying postMessage communication with workers.

سجل النجوم

مخطط تاريخ النجوم لـ googlechromelabs/comlinkمخطط تاريخ النجوم لـ googlechromelabs/comlink

بحث بالذكاء الاصطناعي

استكشف المزيد من المستودعات الرائعة

صف ما تحتاجه بلغة بسيطة — وسيقوم الذكاء الاصطناعي بترتيب آلاف المشاريع مفتوحة المصدر المنسقة حسب الصلة.

Start searching with AI

بدائل مفتوحة المصدر لـ Comlink

مشاريع مفتوحة المصدر مشابهة، مرتبة حسب عدد الميزات المشتركة مع Comlink.
  • andywer/threads.jsالصورة الرمزية لـ andywer

    andywer/threads.js

    3,526عرض على GitHub↗

    threads.js is a JavaScript worker thread library and asynchronous task orchestrator designed to offload CPU-intensive tasks to background threads. It functions as a cross-platform worker pool and a TypeScript worker runner that automatically transpiles and executes TypeScript files within separate threads. The project distinguishes itself by providing a unified worker API that allows for cross-platform execution across different JavaScript environments. It includes a specialized worker data serialization tool to pass complex class instances and binary data between threads, and supports inlini

    TypeScriptisomorphic-javascriptjavascriptmultithreading
    عرض على GitHub↗3,526
  • facebookarchive/asyncdisplaykitالصورة الرمزية لـ facebookarchive

    facebookarchive/AsyncDisplayKit

    13,345عرض على GitHub↗

    AsyncDisplayKit is an asynchronous UI framework and performance library for iOS. It provides a collection of performant alternatives to standard views, allowing developers to build responsive interfaces by offloading layout and rendering tasks to background threads. The framework is centered around a declarative layout engine based on a flexbox model, which calculates element positions and sizes asynchronously. It utilizes a node-based abstraction to wrap native views, enabling the instantiation and configuration of UI hierarchies on background threads to prevent main thread blocking. The sy

    Objective-C++
    عرض على GitHub↗13,345
  • developit/greenletالصورة الرمزية لـ developit

    developit/greenlet

    4,689عرض على GitHub↗

    Greenlet is a multi-threaded asynchronous executor and web worker task runner. It serves as an execution wrapper that offloads heavy computation to background workers to maintain user interface responsiveness and prevent the main execution thread from blocking. The project includes a transferable object handler designed to move large data buffers between threads. This mechanism avoids the overhead of memory copying to optimize data transfer. The library covers the management of web workers, facilitating asynchronous task isolation and main thread offloading.

    JavaScript
    عرض على GitHub↗4,689
  • developit/workerizeالصورة الرمزية لـ developit

    developit/workerize

    4,378عرض على GitHub↗

    Workerize is a web worker module loader and main thread offloader. It functions as an asynchronous proxy wrapper that allows JavaScript modules to run in background workers, preventing browser UI freezes by delegating computationally expensive tasks to separate threads. The project utilizes a proxy-based interface to call functions inside a background worker as if they were local asynchronous calls. This mechanism enables the execution of modules in parallel workers to maintain main thread responsiveness. The system covers asynchronous module execution and web worker integration, focusing on

    JavaScript
    عرض على GitHub↗4,378
عرض جميع البدائل الـ 30 لـ Comlink→

الأسئلة الشائعة

ما هي وظيفة googlechromelabs/comlink؟

Comlink is a remote procedure call library that transforms message-based communication into asynchronous function calls between the main thread and web workers. It provides a proxy-based interface that allows multiple threads to interact with a single object instance without manual message handling.

ما هي الميزات الرئيسية لـ googlechromelabs/comlink؟

الميزات الرئيسية لـ googlechromelabs/comlink هي: Proxy-Based Interfaces, Complex Data Serialization, Remote Procedure Execution, Cross-Thread, Remote Object Proxies, Background Thread Dispatchers, Browser Function Invocations, Main Thread Offloading.

ما هي البدائل مفتوحة المصدر لـ googlechromelabs/comlink؟

تشمل البدائل مفتوحة المصدر لـ googlechromelabs/comlink: andywer/threads.js — threads.js is a JavaScript worker thread library and asynchronous task orchestrator designed to offload CPU-intensive… facebookarchive/asyncdisplaykit — AsyncDisplayKit is an asynchronous UI framework and performance library for iOS. It provides a collection of… developit/greenlet — Greenlet is a multi-threaded asynchronous executor and web worker task runner. It serves as an execution wrapper that… developit/workerize — Workerize is a web worker module loader and main thread offloader. It functions as an asynchronous proxy wrapper that… kriskowal/q — q is a JavaScript promise library and asynchronous flow controller designed to manage non-blocking operations. It… whatwg/html — This repository contains the HTML specification, which defines the core standards for web page structuring, content…