Chromeの開発ツールでfetchして結果をみるには
こんばんは、子供たちが最近ジョジョの奇妙な冒険にハマっている@kjunichiです。
背景
仕事で、新旧システムが混在している環境で、新旧システムが同一のドメインなのでクライアントからはJavaScript経由で通信すれば、旧システムと通信できるはずだが、インフラ周りの設定等あるかものなので、実際に確認してみようということに。
いまどきなら、fetch APIだろ
XMLHttpRequestでのサーバとの通信もすっかりこのところ手を動かしておらず、忘れ気味。 fetchもさすがに2021年なので、普通に使えるだろと思い、Chromeの開発ツール内におもむろに MDNからコピッた以下のコードを実行するものの、肝心のサーバからの応答がコンソールに出力されない。
fetch('/entry/2021/11/22/214623')
.then(response => response.text())
.then(data => console.log(data));
解決方法
await使って同期してからconsole.logでサーバからの応答を確認できた。
res = await fetch('/entry/2021/11/22/214623')
text = await res.text()
console.log(text)
としてら、無事にサーバーからの応答を確認できた。
オチ
が、どうやら正常にサーバーが応答すれば、最初の方法でもコンソールに出力される模様w
子供に円周率の質問をされ、ビュホンの針を思い出しjuliaのコードを修正してマルチCPUで動かした
背景
長男が円周率について質問して来たので、モンテカルロ法を思い出し、それからビュホンの針を思い出し、Juliaでの実装がないかを調べた。
Juliaによるビュホンの針の実装
以下を見つけた。
@paralleは使えない!?
Juliaでマルチコアを使う記述方法がどうやら変更があったようで
use Distributed
を宣言して、
@parallel
を
@distributed
に書き換えるだけで動いた。
ベンチマーク
今年作ってビデオカードが買えずにいる仕事でも使ってる自作PCと、有り金全部注ぎ込んで買った8コアのMacBook Proで 試した。
自作PC
大枚叩いて買った8コアのMacBook Pro
@time buffon_par(10000000000) 32.051117 seconds (2.57 k allocations: 107.734 KiB)
おわりに
どうやら、見つけたコードは書籍の中のコードだった様だが、書籍も新しい版が出ているようで、こちらは、 @distributedに変更されていた。