InfoQ ホームページ Concurrency に関するすべてのコンテンツ
-
Rustの非同期ランタイムであるTokioが1.0に到達
Tokioは、Rustで信頼性が高く高速な非同期プログラムを作成するためのビルディングブロックを提供することを目指している。最近発表されたTokio 1.0は、TCP、UDP、タイマー、マルチスレッド、ワークスティーリングスケジューラなどをサポートしている。
-
データ競合のない並列言語を目指すSwift
Swiftチームは、Swiftの並列性サポートの改善に向けたロードマップを公開した。最初のフェーズでasync構文とアクタを進め、第2フェーズでデータ競合(data races)とデッドロックを排除する予定である。
-
堅牢なテスト戦略により自信を持ってDropbox Syncをリライト
過去数年間、Dropboxのエンジニアはクライアント側の同期エンジンをゼロから書き直してきた。DropboxのエンジニアであるIsaac Goldberg氏は、明確なテスト戦略を定義していなければクイックなリリースサイクルで新しいエンジンを構築して出荷するのは、不可能だったと述べている。
-
Swift Atomicsにより、Swiftでファーストクラスのatomic操作が可能に
Swift Atomicsは、システムプログラマーがSwiftで直接、同期構造を記述できるようにすることを目的としている。
-
JetPackとDropbox Storeを使った最新のAndroidアプリケーションアーキテクチャ
Dropboxは先頃、現在のAndroid開発者エコシステムにより合うように改良するために、オープンソースのStoreライブラリの所有権を獲得した。 New York Timesがオリジナルを開発した後、CoroutinesとFlowをベースにKotlinで書き直されたStoreは、Google JetPackライブラリコレクションとともに、最新のAndroidアプリ開発ソリューションを提供するライブラリである。
-
RustによるElixirインターフェースを用いたパフォーマンス改善 - DIscordの事例
Discordチームは、大規模データ構造を扱うBEAMのパフォーマンスが限界に達したことから、1,100万に達する同時ユーザ数に対する同社システムのスケールアップを、RustによるElixirインターフェースに頼ることにした。
-
WorkerDOMはJavaScriptプログラミングにDOM並行処理を加える
今年のJSConfの大きなニュースはWeb WorkerでDOMを利用可能にするJavaScriptライブラリであり、開発者がマルチコアプロセッサアーキテクチャを活用してWebパフォーマンスを向上させることができるWorkerDOMが紹介されたことである。
-
フェイスブックがRacerDをオープンソースに - Javaの競合状態を検出
フェイスブックのオープンソースの静的解析ツールであるInferが、RacerDによるJavaコード競合状態検出を追加して公開された。
-
QCon New York 2017: システム内のイベントの順序付け
Samsaraのソフトウェア技術者であるKavya Joshi氏が、QCon New York 2017で、happens-before原則について詳細に解説した。その中で氏は、分散型キーバリューストアであるRiakがノード間の因果関係の確立にベクトルクロックを使用している方法を解説するとともに、Goの並列処理プリミティブに注目し、それがhappen-before制約を自然に表現できる点について説明した。
-
並列性と未来の分散プログラミングの関係
身の回りの全ての世界は並列に進んでおり、非同期でイベント駆動である。最近のQCon LondonでJoe Duffy氏は基調講演を行い、並列性とクラウドは全ての開発者が将来的に取り扱う必要がある概念であると主張した。この中心にあるのは通信であり、これは並列性と分散システムの両方にとって必要不可欠なものである。
-
GoogleがGrumpyでCPythonの並列実行性の問題を解決
GoogleはCPythonに存在するGlobal Interpreter Lockによって引き起こされる並列実行性の制限を、Goで新しいPythonランタイムを作成することで解決した。
-
Netflix Zuulが、非同期なノンブロッキングアーキテクチャに大変身
Rags Srinivas氏は、マイクロサービス向けのZuulゲートウェイの主要な再構築についてNetflixのエンジニアリングマネージャーであるMikey Cohen氏に話を聞いた。 Cohen氏はその旅路について話し、この重要な試みの動機とチャレンジに話題を進める。
-
Gil Tene氏が講演でハードウェアトランザクショナルメモリを解説
QCon New York 2016で行なわれたプレゼンテーション “Understanding Hardware Transactional Memory”で,Gil Tene氏は,ハードウェアトランザクショナルメモリ(HTM)について紹介した。概念としては古くからあったものの,やっと今,一般的なハードウェアとして利用できるようになったHTMの目的は,メモリの複数アドレスに対するアトミックな書き込みを可能にして,他のスレッドとの共同動作に矛盾を生じさせないことだ。
-
FacebookのAsyncDisplayKit - iOSアプリ用のスムーズな非同期UIが特徴
FacebookがAsyncDisplayKitをオープンソースとして公開した。元々は,旧型のデバイス上でもアプリのスムーズな動作と応答性の維持を容易に保証する目的で,同社のPaperアプリのために開発されたフレームワークだったものだ。
-
Contemplate ThreadSafeがデッドロック検出機能を導入
デッドロック検出ルールを新たに備えた,ContemplateのThreadSafeバージョン1.3.1が公開された。ロックを獲得する順序が原因で,デッドロックする可能性のあるコードを検出する機能を備える。デッドロックを検出すると,どのロック獲得が原因となっているかを報告する。