1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-Napa.js

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
sync.md 3.3 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Yulong Wang Отправлено 06.01.2018 02:19 f152547

Namespace sync

Table of Contents

APIs

Namespace sync deal with synchronization between threads in Napa. Lock is provided for exclusive and shared mutex scenarios.

Interface Lock

Exclusive Lock, which is transportable across JavaScript threads.

Use napa.sync.createLock() to create a lock.

var lock = napa.sync.createLock();

lock.guardSync(func: (...params: any[]) => any, params?: any[]): any

Run input function synchronously and obtain the lock during its execution, returns what the function returns, or throws error if input function throws. Lock will be released once execution finishes.

try {
    var value = lock.guardSync(() => {
        // DoSomething may throw.
        return DoSomething();
    });
    console.log(value);
}
catch(error) {
    console.log(error);
}

An example Synchronized Loading demonstrated how to implement a shared, lazy-loading phone book.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/mirrors-Napa.js.git
git@api.gitlife.ru:oschina-mirror/mirrors-Napa.js.git
oschina-mirror
mirrors-Napa.js
mirrors-Napa.js
master