2018-01-01から1年間の記事一覧

DockerコンテナへのJDKへのインストールが失敗する

1か月前は普通にできていたDockerコンテナ(Ubuntu)へのJDKのインストールが失敗するようになった。 Err:186 http://220.152.35.154:80/data/02c924ae5a628323/archive.ubuntu.com/ubuntu bionic-updates/universe amd64 openjdk-8-jdk amd64 8u181-b13-1ub…

RxJSを使い、配列のデータを1件ずつ待ちを挟みながら処理していく。

前回の記事をRxJSを使って書き直したような感じの内容。 前回との違いは元になるデータが配列ってところくらい。 private messages = []; private messageArray = [{message: 'テストメッセージ1'}, {message: 'テストメッセージ2'}] const delayObservable …

Promiseを使って非同期の処理を直列に処理する方法。

4~5年くらい前にPromiseがイマイチ理解できずにコールバックのネストで済ませてしまった問題をようやく解決できた。。。 Promise.resolve() .then(() => { return new Promise((resolve, reject) => { setTimeout(() => { // 何か処理を書く resolve(); }, 1…

Clojureで特定の条件になるまで待つ

この例だと10秒待つ感じ。 if の条件を関数とかにして引数でもらうようにすれば大体のパターンに対応できる。 (defn wait-10sec [] (loop [i 0] (if (< i 10) (do (Thread/sleep 1000) (println i) (recur (+ i 1)))))) これはなんかライブラリがありそうな…

ループの途中でreturn(break)したい

気が付いたら前回のポストからすでに2年弱。早いもんですね。。。。 Pythonでいうところの objs = [{"a": 1, "text": "test 1 message"}, {"a": 2, "text": "test 2 message"}, {"a": 3, "text": "test 3 message"}] for o in objs: if o["a"] == 3: return …