Skip to content

Instantly share code, notes, and snippets.

@bamchoh
bamchoh / main.go
Created March 2, 2024 01:48
CTRL+Cを押してアプリを終了するときにwaitGroupでのWait()で無限待ちにならないようにする方法
/*
単純に main関数の終わりで シグナルを待つようにすれば無限待ちにならない
以前は main関数の終わりでは wg.Wait()で待つようにしていて
シグナルを待つ処理をゴルーチンでやってシグナルが来たらcancel()を読んで
ほかのゴルーチンに通知する方式でやっていた。
この方式だと、いろんなところに ctx.Done() とのselect を書く必要があり
書き忘れが発生するとタスクをキルするしかなくなっていた
今回の方法だと書き忘れがあってもアプリがちゃんと終了してくれるので
コードもすっきりするし期待した動作もしてくれるしで両方ハッピー
*/
@bamchoh
bamchoh / README.md
Last active February 12, 2024 15:26
Youtube Ad Blocker

インストールの方法

適当なフォルダを作成し content.js, manifest.json を配置

chrome://extensions/ にアクセスし、「パッケージ化されていない拡張機能を読み込む」をクリックし、作成したフォルダを選択すると完了。

拡張を作るのに参考にしたサイト

  • Chrome拡張の作り方 (超概要)
@bamchoh
bamchoh / main.lua
Last active July 12, 2023 15:34
Tiny searchpath for loading Lua script by Lua V5.1.4
local searchpath_lua = require('searchpath_lua')
local filename = searchpath_lua("test")
print(filename)
@bamchoh
bamchoh / main.go
Last active March 12, 2023 14:56
My gopcua
// Copyright 2018-2020 opcua authors. All rights reserved.
// Use of this source code is governed by a MIT-style license that can be
// found in the LICENSE file.
package main
import (
"context"
"database/sql"
"flag"
@bamchoh
bamchoh / main.go
Last active March 6, 2023 16:27
TCP通信の送信データをキューイング
//go:build ignore
package main
import (
"fmt"
"math/rand"
"net"
"time"
)
@bamchoh
bamchoh / mqtt_trans_to_jp.rst
Last active February 28, 2022 22:59
MQTT 3.1.1 日本語訳 (自分用)

MQTT 3.1.1 日本語訳 (自分用)

更新

2020-12-21

作者

@bamchoh

バージョン

0.01

注意

@bamchoh
bamchoh / main.go
Created July 8, 2020 12:30
全列挙(DFS版)
package main
import (
"fmt"
"strings"
)
func comb(a []string) [][]string {
b := make([][]string, 0)
@bamchoh
bamchoh / main.go
Created July 8, 2020 06:57
ビット全探索
package main
import (
"strings"
"fmt"
)
func comb(a []string) [][]string {
ret := make([][]string, 0)
@bamchoh
bamchoh / main.go
Created June 23, 2020 16:04
NAT超え over UDP
package main
import (
"flag"
"fmt"
"net"
"strings"
"time"
)
@bamchoh
bamchoh / main.go
Created June 23, 2020 16:03
STUN server over UDP
package main
import (
"flag"
"fmt"
"net"
"os"
"time"
)