JavaScriptはシングルスレッドであることが知られています。そして、Promiseを用いた非同期処理ができることは周知の事実です。では、なぜシングルスレッドで非同期処理ができるのでしょうか? その点について、非同期処理のための2種類のQueuesについて触れつつ、コードベースでの説明も行います。
![JavaScriptはなぜシングルスレッドでも非同期処理ができるのか/Why Can JavaSctipt Invoke Asynchronous in Single Thread?](https://cdn-ak-scissors.b.st-hatena.com/image/square/1cb5dfbb64f8c1119019eb8a336cd8d7dcc53bf2/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2F380e45bc0a4b4dc28f8a35b68c323a97%2Fslide_0.jpg%3F18968032)
JavaScriptはシングルスレッドであることが知られています。そして、Promiseを用いた非同期処理ができることは周知の事実です。では、なぜシングルスレッドで非同期処理ができるのでしょうか? その点について、非同期処理のための2種類のQueuesについて触れつつ、コードベースでの説明も行います。
Edit June 2023: Added a section on Colima MacOS is a Unix but it isn’t a Linux so, unfortunately, if/when we need to use linux-y things like docker we need to install a VM just like in the Windows world. That’s of course also true for docker. Like most people I’ve been using Docker Desktop for a lot of years to get my fix for container. It works pretty well, good even for almost everything. I don’
機械学習のためのすごいPythonライブラリ Image by Free-Photos from Pixabay はじめに Pythonは機械学習に不可欠な要素で、ライブラリは作業をより単純にしてくれます。最近、MLのプロジェクトに取り組んでいる時に、素晴らしいライブラリを6つ見つけました。ここでは、それを紹介します。 1. clean-text clean-textは本当に素晴らしいライブラリで、スクレイピングやソーシャルメディアデータを処理する時にまず使うべきものです。最も素晴らしい点は、データをクリーンアップするために長く凝ったコードや正規表現を必要としないことです。 いくつかの例を見てみましょう。 インストール #Importing the clean text library from cleantext import clean # Sample text text = """
ファイル検索したのに、なかなか該当ファイルが見つからないということがある。必死に探し回ってようやく見つけると、検索キーワードの送りがなや表記の揺れが原因でファイル検索で見つからなかったということも多々ある。例えば「引き換え」で検索していたが本文には「引換え」と書かれていた場合だ。今回、こうした表記揺れを吸収するために形態素解析を利用した簡単なファイル検索ツールを作ってみよう。 曖昧検索したところ - grepで見つけられなかったファイルも曖昧検索で見つけることができた 形態素解析で簡単表記揺れ吸収検索 「形態素解析」とは単語辞書を利用して、文章を最小単位の単語に区切る技術だ。多くの形態素解析を行うツールでは、単語辞書を利用して単語のヨミガナを取得する機能がついている。この機能を使う事でちょっとした表記揺れを吸収することができる。 欠点としてはテキストと単語辞書を照合していくため動作速度は遅
LINEのフロントエンド開発センターの役割やミッションについての説明や、フロントエンドエンジニアの仕事内容や業務事例、働く環境などについて紹介する「LINEフロントエンドエンジニア採用説明会」。そこでフィナンシャル開発センターのフロントエンジニアの水牧稜太氏が、「LINE証券」のフロントエンド開発について共有しました。 新卒なのに一番古参のLINE証券フロントエンジニア 水牧稜太氏(以下、水牧):ではこれから、ReactとTypeScriptで作るLINE証券のフロントエンド開発について、紹介したいと思います。よろしくお願いします。 まず自己紹介からですね。私はLINE証券でフロントエンジニアとして働いている、水牧と申します。2020年度に新卒として入社し、LINE証券に配属されています。社員としての経歴はまだ1年ちょっとなのですが、LINE証券の開発チーム自体にはアルバイトとして以前から
2021/09/22にリリースされた v.15.0.0 中でIPC通信周りに大きな変更はありませんでした。 ただ、その前のバージョン(14.0.0)で、contextBridge.exposeInMainWorld(apiKey, api)からExperimental(実験的)が取れ、正式運用となっていたようです(#30011)。 Electron における IPC 通信 Electron で Desktop アプリケーションを作るにあたって理解しなければならないのは、根幹を成す「IPC通信」かと思います。IPC は Inter-Process Communication、プロセス間通信の略です。 IPC 通信の方法については、Electron において、いくつかの段階を経て、進化を遂げています。今回の記事では、その歴史を追いながら、仕組みとセキュアな方法を書いていきたいと思います。 なぜ
はじめまして。メルカリの Microservice Platform CI/CD とメルペイの Architect で Software Engineer Internship をしている riita10069 です。 この記事は、Merpay Tech Openness Month 2021 の3日目の記事です。 本記事では、私が Kubernetes1のコントローラー2を開発する上で使用している開発環境について紹介したいと思います。 コントローラーの実行環境についてまとまっていなかった方や、これからコントローラーを実装するけれど環境構築で悩んでいる方などの参考になれば嬉しいです。 Abstract Kubernetes のコントローラーを開発する場合に、動作確認をしたり、自動テストを作成するのには、実際にコントローラーを Kubernetes の環境上で動作させる必要があります。 具体
SREチームの安達(@adachin0817)です。今回はMENTA、Lancers Creative、Lancers Agencyでマスキングした本番環境のデータをStgや開発環境のMySQLコンテナへ毎週リストアする仕組みを実装しました。実際にここらへんは運用をしていく中で一苦労されている方も多いのではないでしょうか。それではまず背景と、実装するに当たっての活動含めてご紹介できればと思います。 背景 今回はMENTAを例にしています。各サービスの開発環境はDockerを利用しており、本番とStg環境はTerraformで管理しています。カラム追加ではマイグレーションを実行することでサンプルのスキーマファイルを投入して開発をしているのですが、たまに開発環境で動いていたソースがStgや本番で動かないといったことで開発効率が下がることが見受けられます。開発メンバーにとってはより本番環境に近い
Denoの分散ホスティング「Deno Deploy」ベータ2公開。FiIe System API追加、クラッシュレポートなど Node.jsの作者であるライアン・ダール(Ryan Dahl)氏が新たに立ち上げた企業「Deno Company」は、サーバサイドでJavaScript/TypeScriptを実行するためのオープンソースのフレームワーク「Deno」と、その分散ホスティングである「Deno Deploy」を提供しています。 Denoは、ライアン・ダール氏がNode.jsを開発した経験を活かし、より優れたサーバサイドのJavaScriptランタイムとして新たに開発しているものです。V8 JavaScriptエンジンをベースにしており、JavaScriptだけでなく、TypeScriptとWebAssembly(WASM)にも対応します。 Deno Deployは、その名前の通りDen
こんにちは。SRE部データ基盤チームの塩崎です。ZOZOテクノロジーズではGCPの管理を各プロジェクトのOwnerに任せていた時期が長く続いていましたが、今期から全社的なGCP管理者を立てることになりました。本記事では新米GCP管理者である僕が全社的なGCPの管理をする上で遭遇した事例を紹介します。時には泥臭い方法で、時にはプログラムの手を借りて自動化をし、数々の難題に対処しました。 GCPのリソース階層について 具体的な事例紹介の前に、GCPのリソース階層を説明します。多くのGCP利用者からは、プロジェクトが最上位のリソースであるように見えますが、実はそれ以上の階層が存在します。以下の図をご覧ください。図の通り、プロジェクトの上位リソースとしてFolder、Organizationという2つのリソースが存在します。 cloud.google.com Folderはプロジェクトの論理的なま
昨日はこちらの記事に端を発する形で、空のdiv要素やspan要素は妥当なのかといった話題が見られました。 中身のない空の div 要素や空の span 要素は HTML 仕様として妥当なのか? - dskdこの記事は空のdiv要素やspan要素が妥当かどうかという疑問にHTML仕様の観点から考察を加える大変面白い記事です。記事の結論としては、“僕の結論としては「否」である。”としています。 しかし、いくらHTML仕様を読んだといっても、こういった議論には解釈が入りがちです(こちらの記事でも結論の前に“ここからは完全に僕の解釈として書く。”と明記されています)。 仕様なのに解釈を入れる必要があるのはどうなのと思いつつ、実はこの記事でこれから紹介するように、HTML仕様もなかなか曖昧に書かれており解釈が必要なのは仕方のないことです。 筆者はどちらかというと空のdivを肯定する考えを持っていたの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く