いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

Goメモ-65 (ゴルーチンと再帰処理の組み合わせメモ) と C#のサンプル

概要 サンプル ついでに C# のサンプル 概要 よくやり方忘れるので、自分用にここにメモ。 WaitGroupの待ち合わせとチャネルのcloseを忘れるとGoにdeadlockって怒られるので注意。 サンプル ディレクトリを再帰的に降りていって出力するサンプル。別に非同期…

Goメモ-64 (*testing.T.Logメソッドの挙動がgo1.13とgo1.14で異なる)

概要 準備 サンプル 概要 以下の記事で知りました。感謝 m( )m dave.cheney.net Go1.13のときは、t.Log() すると、テストが完了してから出力されていたのですが Go1.14からは、バッファリングせずに即出力されるようになっているみたいですね。 準備 自分の…

Goメモ-63 (Shift-JISとEUC-JPなファイルを扱う)

概要 インストール サンプル Shift-JIS EUC-JP 概要 以下、自分用メモです。忘れない内にメモメモ。 現在、ほとんどのファイルが UTF-8 とかになっていることが多いですが それでも、実務とかだと未だに Shift-JIS とか EUC-JP なファイルをよく見ることがあ…

Goメモ-62 (sync.WaitGroupとerrgroupパッケージ)

概要 インストール サンプル sync.WaitGroupでエラー伝播 errgroup.Groupでエラー伝播 errgroupでctx.Contextを使ったサンプル errgroupでパイプライン処理 ついでに結果をExcelに出力するサンプル 概要 忘れない内にメモメモ。 複数の非同期処理の完了を待…

Goメモ-61 (ループ内でdeferする場合のTips)

概要 サンプル サンプル2 概要 Goでソース書いているとき、たまにループ内でdeferを使いたいときがあります。 何個もファイルを開いていくときとか。 そういうとき、ループ内で defer 書くと、GoLandさんが「ループ内で defer を直接使ってるよ!」って警告…

ChromebookとGitpodでお安く勉強環境を作る

概要 勉強する環境作る Github に登録 勉強用のリポジトリ作る Gitpodに登録する Gitpodの拡張機能をChromeブラウザにインストール GithubのリポジトリをGitpodで開く この環境のメリット この環境のデメリット 参考 概要 個人的に、お安く勉強できる環境が…

Goメモ-60 (インターフェースをちゃんと実装しているか検証するTips)

概要 インターフェースと構造体を定義してみる インターフェースを拡張してみる 構造体のコンストラクタでインタフェース型で返す 複数のインターフェースを実装している場合 概要 Qiitaに以下のとても勉強になる記事がありました。 qiita.com なるほど、、…

Goメモ-59 (現在のメモリ使用量を取得, runtime.MemStats)

概要 サンプル 参考 概要 メモリ使用量を取得するやり方を調べていたので、忘れないうちにメモメモ。 大抵どの言語でもあるものなんですが、Goの場合は runtime.ReadMemStats(*runtime.MemStats) で取得できるみたいですね。 以下、ちょっとしたメモ書きサン…

Goメモ-58 (GoLandで変数のシャドウイングを検知するように設定する)

概要 Ctrl+Shift+AでActions表示して "shadow" って入力 参考 概要 var hoge *Hogeif condition != nil { hoge, err := https://t.co/3dOQ15DCmc(ctx, hoge_key)if err != nil {return nil, err} fmt.Printf("%v", *hoge)} else {hoge = nil}こんな感じのコ…

Goメモ-57 (Excelシートの画像の上にNo.XXってナンバリングしていく)

まえがき 概要 サンプル まえがき devlights.hatenablog.com devlights.hatenablog.com devlights.hatenablog.com devlights.hatenablog.com devlights.hatenablog.com の続きです。。。ご覧なっていない場合は先に上を御覧くださいませー。 概要 仕事上、大…