並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 20 件 / 20件

新着順 人気順

non-blockingの検索結果1 - 20 件 / 20件

  • GitHub - cloudwego/netpoll: A high-performance non-blocking I/O networking framework focusing on RPC scenarios.

    Netpoll is a high-performance non-blocking I/O networking framework, which focused on RPC scenarios, developed by ByteDance. RPC is usually heavy on processing logic and therefore cannot handle I/O serially. But Go's standard library net is designed for blocking I/O APIs, so that the RPC framework can only follow the One Conn One Goroutine design. It will waste a lot of cost for context switching,

      GitHub - cloudwego/netpoll: A high-performance non-blocking I/O networking framework focusing on RPC scenarios.
    • GitHub - ethereum/lahja: Lahja is a generic multi process event bus implementation written in Python 3.6+ to enable lightweight inter-process communication, based on non-blocking asyncio

      You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

        GitHub - ethereum/lahja: Lahja is a generic multi process event bus implementation written in Python 3.6+ to enable lightweight inter-process communication, based on non-blocking asyncio
      • GitHub - mitchellh/libxev: libxev is a cross-platform, high-performance event loop that provides abstractions for non-blocking IO, timers, events, and more and works on Linux (io_uring or epoll), macOS (kqueue), and Wasm + WASI. Available as both a Zig an

        libxev is a cross-platform event loop. libxev provides a unified event loop abstraction for non-blocking IO, timers, signals, events, and more that works on macOS, Windows, Linux, and WebAssembly (browser and WASI). It is written in Zig but exports a C-compatible API (which further makes it compatible with any language out there that can communicate with C APIs). Project Status: 🐲 Unstable, alpha

          GitHub - mitchellh/libxev: libxev is a cross-platform, high-performance event loop that provides abstractions for non-blocking IO, timers, events, and more and works on Linux (io_uring or epoll), macOS (kqueue), and Wasm + WASI. Available as both a Zig an
        • GitHub - jeremycw/httpserver.h: Single header library for writing non-blocking HTTP servers in C

          You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

            GitHub - jeremycw/httpserver.h: Single header library for writing non-blocking HTTP servers in C
          • Basic non-blocking IO using epoll in Rust - zupzup

            Basic non-blocking IO using epoll in Rust I’ve been using async, or non-blocking IO systems for years in multiple languages such as JavaScript (Node.js), Java/Kotlin and Rust. I couldn’t, however, explain very well how it works under the hood and while I heard about poll, select, epoll, event queues and the like before, I wouldn’t have been confident explaining how non-blocking IO actually works t

            • Node.js — Overview of Blocking vs Non-Blocking

              Overview of Blocking vs Non-Blocking This overview covers the difference between blocking and non-blocking calls in Node.js. This overview will refer to the event loop and libuv but no prior knowledge of those topics is required. Readers are assumed to have a basic understanding of the JavaScript language and Node.js callback pattern. "I/O" refers primarily to interaction with the system's disk an

                Node.js — Overview of Blocking vs Non-Blocking
              • Non-Blocking Spring Boot with Kotlin Coroutines | Baeldung on Kotlin

                Full Archive The high level overview of all the articles on the site.

                  Non-Blocking Spring Boot with Kotlin Coroutines | Baeldung on Kotlin
                • GitHub - reactor/BlockHound: Java agent to detect blocking calls from non-blocking threads.

                  You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                    GitHub - reactor/BlockHound: Java agent to detect blocking calls from non-blocking threads.
                  • GitHub - Allenxuxu/gev: 🚀Gev is a lightweight, fast non-blocking TCP network library / websocket server based on Reactor mode. Support custom protocols to quickly and easily build high-performance servers.

                    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                      GitHub - Allenxuxu/gev: 🚀Gev is a lightweight, fast non-blocking TCP network library / websocket server based on Reactor mode. Support custom protocols to quickly and easily build high-performance servers.
                    • GitHub - panjf2000/gnet: 🚀 gnet is a high-performance, lightweight, non-blocking, event-driven networking framework written in pure Go./ gnet 是一个高性能、轻量级、非阻塞的事件驱动 Go 网络框架。

                      gnet is an event-driven networking framework that is ultra-fast and lightweight. It is built from scratch by exploiting epoll and kqueue and it can achieve much higher performance with lower memory consumption than Go net in many specific scenarios. gnet and net don't share the same philosophy about network programming. Thus, building network applications with gnet can be significantly different f

                        GitHub - panjf2000/gnet: 🚀 gnet is a high-performance, lightweight, non-blocking, event-driven networking framework written in pure Go./ gnet 是一个高性能、轻量级、非阻塞的事件驱动 Go 网络框架。
                      • JavaScript, Single Threaded but Non-Blocking

                        For those who just got in touch with JavaScript might be confused when hearing people say that JavaScript is a single threaded and non-blocking programming language. You might be thinking how could one be single threaded but non-blocking? Single Threaded JavaScript is known to be single threaded because of its property of having only one call stack, which some other programming languages have mult

                          JavaScript, Single Threaded but Non-Blocking
                        • GitHub - rochus-keller/CspChan: A pure C (-std=c89) implementation of Go channels, including blocking and non-blocking selects.

                          #include <stdlib.h> #include <stdio.h> #include "CspChan.h" static void* senderA(void* arg) { CspChan_t* out = (CspChan_t*)arg; int i = 0; while(!CspChan_closed(out)) { CspChan_send(out,&i); i++; CspChan_sleep(1000); } return 0; } static void* senderB(void* arg) { CspChan_t* out = (CspChan_t*)arg; int i = -1; while(!CspChan_closed(out)) { CspChan_sleep(1000); CspChan_send(out,&i); i--; CspChan_sle

                            GitHub - rochus-keller/CspChan: A pure C (-std=c89) implementation of Go channels, including blocking and non-blocking selects.
                          • 最近読んだ本に > Node.jsにはNon-Blocking I/Oがあるため、リクエストAを処理している間にリクエストBを受け付けることができる と書いてあったのですが、シングルスレッドでBlocking I/Oであるランタイムを持つ言語はサーバー実装には向かないという… | mond

                            mondでこの質問への回答を読んでみましょう

                              最近読んだ本に > Node.jsにはNon-Blocking I/Oがあるため、リクエストAを処理している間にリクエストBを受け付けることができる と書いてあったのですが、シングルスレッドでBlocking I/Oであるランタイムを持つ言語はサーバー実装には向かないという… | mond
                            • gnet - A high-performance, lightweight, non-blocking, event-driven networking framework written in pure Go | gnet

                              Ultra-FastBuilt in Go, gnet is ultra-fast and memory efficient based on the event-driven mechanism. It's designed to create a networking server framework for Go that performs on par with Redis and Haproxy for networking packets handling. Concise & Easy-to-use APIsgnet provides concise and easy-to-use APIs for users, it only exposes the essential APIs and takes over most of the tough work for users

                              • 最近読んだ本に > Node.jsにはNon-Blocking I/Oがあるため、リクエストAを処理している間にリクエストBを受け付けることができる と書いてあったのですが、シングルスレッドでBlocking I/Oであるランタイムを持つ言語はサーバー実装には向かないという… | mond

                                Read the answer to this question in Mond

                                  最近読んだ本に > Node.jsにはNon-Blocking I/Oがあるため、リクエストAを処理している間にリクエストBを受け付けることができる と書いてあったのですが、シングルスレッドでBlocking I/Oであるランタイムを持つ言語はサーバー実装には向かないという… | mond
                                • Less Relevant: Blocking vs Non-Blocking - steps to phantasien

                                  ブロッキングかノンブロッキングかという議論、10-20 年前と比べるとだいぶどうでもよくなった。これは全ての二項対立に言えることだが、理論的な良さ・悪さは個別の実装のがんばりによっていくらでもひっくり返る。 ブロッキング API と大量のスレッドが嫌われた理由の一つは OS スレッドのオーバーヘッドだった。スタックとかのためにアロケートされるメモリや、スケジューラへの負担。 スケジューリングを自分で持つような言語処理系だと、たいがいスレッドはずっと軽量になる。その筆頭は Go や Erlang だろう。Java Project Loom の Fiber も似たようなものになりそうな雰囲気がある。OS に fiber 的な仕組みを突っ込むこともできることはできて、先の Project Loom の資料は Google が C++ fiber のため Linux kernel を改変している事

                                  • Kotlin 1.3のCoroutineの使い方②(blockingとnon-blockingの世界) - Qiita

                                    検証環境 この記事の内容は、以下の環境で検証しました。 Intellij IDEA ULTIMATE 2018.2 Kotlin 1.3.0 Gradle Projectで作成 GradleファイルはKotlinで記述(KotlinでDSL) 準備 詳細は下記の準備を参照してください。 https://qiita.com/naoi/items/8abf2cddfc2cb3802daa Bridging blocking and non-blocking worlds 前回に引き続き、公式サイトを読み解いていきます。 タイトルの意味的には、ブロックとブロックしていない世界の架け橋でしょうか。 ブロックが今回の主題になりそうです。 では、読み進めていきます。 The first example mixes non-blocking delay(...) and blocking Thread.

                                      Kotlin 1.3のCoroutineの使い方②(blockingとnon-blockingの世界) - Qiita
                                    • Ruby 3 の Ractorを使って Non blocking readを実現する

                                      趣味でつくっているシミュレーションゲームがあり、その中で Ractor(Ruby3に入った並列処理を実現する機構)を使えそうな場面があったのでやってみた。 Ractorで何ができるかは、下記を参照してほしい。 https://github.com/ruby/ruby/blob/master/doc/ractor.md https://ruby-doc.org/core-3.0.0/Ractor.html やりたかったこと ゲームの中で、コンスタントに「ゲーム内時間」を生成する仕組みがほしかった。 現実時間とゲーム内時間は対応しているが、加速・遅延させることもしたい。 イメージは ゲーム開始時は、現実世界と同じ時間の流れ方 アドミンユーザーのインプットによって、ゲーム内時間の変更が可能 その時点でのゲーム内時間に応じて、特定の処理をさせたい 時間をtimestampのArrayで実現している

                                        Ruby 3 の Ractorを使って Non blocking readを実現する
                                      • Introduction to Bare Metal Programming with Microchip Episode 4: (Non)-Blocking Functions and Timers

                                        In this 4th episode of the bare metal programming series for the AVR® Tiny2 (ATtiny1627), we will cover:  - Setting up an I/O pin as an output  - Setting up ...

                                          Introduction to Bare Metal Programming with Microchip Episode 4: (Non)-Blocking Functions and Timers
                                        • non-blocking socketにOpenSSL適用する | NHN Cloud Meetup

                                          この記事で使用するOpenSSLのバージョンは1.0.1uです。 ハートブリード脆弱性を回避するには、1.0.1g以上を使用します。 OpenSSL公式ページ:https://www.openssl.org/ 公式文書:https://www.openssl.org/docs/man1.0.1/ssl/ ここではOpenSSLのビルド、プロジェクトに設定する方法、詳細なエラー処理は省略します。 開発に必要な内容だけ整理してみよう。 以下の内容があればすぐにnon-blocking socketにSSLを適用できます。 この記事で必要なヘッダファイルは以下のとおりです。 ssh.h bio.h err.h engine.h conf.h プライベート証明書の生成 テストのために証明書が必要なので、プライベート証明書を1つ作ろう。 以下のように実行すればプライベート証明書を作成できます。 op

                                            non-blocking socketにOpenSSL適用する | NHN Cloud Meetup
                                          1