Skip to content

Instantly share code, notes, and snippets.

View skoowoo's full-sized avatar
🎙️

Skoo Wu skoowoo

🎙️
View GitHub Profile
package main
import (
"net"
"unsafe"
"syscall"
)
func main() {
conn, err := net.Dial("tcp", "www.taobao.com:80")
package main
import (
"net"
"unsafe"
"syscall"
)
type fdMutex struct {
state uint64
package main
import (
"reflect"
"unsafe"
)
type TestStruct struct {
A int
B string
@skoowoo
skoowoo / go-epoll-server
Last active April 9, 2024 02:29
这是一个用 Go 基于 epoll 写的服务器程序,虽然 epoll 的实现不是很完善,还有许多细节需要改善,但此程序可以作为 Go epoll 开发的样例。这个程序也是在一个特定的需求场景下写的。
package main
import (
"bytes"
"encoding/binary"
"flag"
"io"
"log"
"os"
"runtime"
@skoowoo
skoowoo / go-get-gitlab.patch
Created September 15, 2014 06:43
go get支持gitlab的patch
--- go/src/cmd/go/vcs.go 2014-08-13 11:49:45.000000000 +0800
+++ /Users/marckywu/local/go/src/cmd/go/vcs.go 2014-09-15 12:41:43.000000000 +0800
@@ -587,6 +587,24 @@
check: oldGoogleCode,
},
+ // Gitlab
+ {
+ prefix: "gitlab.test.com/",
+ re: `^(?P<root>gitlab\.test\.com/[A-Za-z0-9_.\-]+/[A-Za-z0-9_.\-]+)(/[A-Za-z0-9_.\-]+)*$`,
@skoowoo
skoowoo / varint.c
Created September 30, 2013 14:06
base 128 varint编码解码算法
#include <stdio.h>
#include <stdint.h>
int encode_varint(char *buf, uint64_t x)
{
int n;
n = 0;
while (x > 127) {
package main
import (
"runtime"
"time"
)
func main() {
runtime.GOMAXPROCS(runtime.NumCPU())
@skoowoo
skoowoo / go_shuffle.go
Created September 27, 2013 04:24
go runtime中的洗牌算法测试
package main
import (
"math/rand"
"time"
"fmt"
)
var report map[int][]int
@skoowoo
skoowoo / detect-utf8.go
Last active December 22, 2015 19:29
判断一段数据是否是utf-8编码
const (
UTF_BYTE_MASK1 = 0xF0
UTF_BYTE_MASK2 = 0xC0
UTF_BYTE_MASK3 = 0xC0
UTF_BYTE_VALUE1 = 0xE0
UTF_BYTE_VALUE2 = 0x80
UTF_BYTE_VALUE3 = 0x80
)
@skoowoo
skoowoo / go-rpc-bm-client.go
Last active September 22, 2021 11:40
go rpc benchmark
package main
import (
"flag"
"fmt"
"log"
"net/rpc"
"sync"
"time"
)