Go语言中文网 为您找到相关结果 8

golang的指针到string,string到指针的转换

由于某个需求,需要如题的转换,废话不多说,直接贴代码了,其实挺丑了,备用了 func (this *Server) socketParserHandler(client *genTcpServer.Client, fullData []byte) { fmt.Println("original data is", client) strPointerHex := fmt.Sprintf("%p", unsafe.Pointer(client)) fmt.Println("connection is", strPointerHex) strPointerInt := fmt.Sprintf("%d", unsafe.Pointer(client)) fmt.Println("connectio...阅读全文

博文 2014-10-04 19:26:13 ziyouchutuwenwu

C中调用go中的回调函数

在用go包装某些c库时(如glut),需要将go函数当作回调函数传递给c库(如glutDisplayFunc(&draw)中的draw函数,我想将go写的函数传过去),应该怎么做?我写了一个示例,但一直不成功,不知道为什么?麻烦知道的帮我解答一下。 代码如下: /* test.h */ extern void SetFunc(); /* test.c */ #include "test.h" #include "_cgo_export.h" void SetFunc() { InternalFunc(); } /* test.go */ package main // #include "test.h" import "C" ...阅读全文

主题 2013-04-19 09:03:40 shikuijie

gdb 调试go

go build -gcflags "-N -l" test (gdb) source /usr/local/go/src/pkg/runtime/runtime-gdb.py Loading Go Runtime support .(gdb) r -f etc/test.conf (gdb) info goroutines 1 waiting runtime.park * 2 syscall runtime.notetsleepg 3 waiting runtime.park 4 waiting runtime.park * 5 syscall runtime.notetsleepg 6 waiting runtime.park 7 waiting runtime.park * 17 ru...阅读全文

博文 2015-06-18 09:02:09 xiaolei1982

zero down-time update服务的方案

从问题开始 先来抛一块砖,对于静态编译的应用程序,比如用C、C++、Golang或者其它的语言编写的程序,如果我们修改一个BUG或者添加一个新的特性后,如何在服务不下线的情况下更远应用程序呢?抛出了一个问题,一个很平常的问题,有人对问题思考比较透彻,比如牛顿,被苹果砸中了之后,引起了很多的思考,最后发现了万有引力定律。 如果你被苹果砸中了怎么办? 玩笑话一句,那我们如果被苹果砸中了会不死变成智障呢? 那么我们回到刚才这个问题 :当我们修复BUG,添加新的需求后,如何如丝般顺滑地升级服务器应用程序,而不会中断服务?这个问题意味着:C / C++ / GO都是静态语言,所有的指令都编译在可执行文件,升级就意味着编译新的执行文件替换旧的执行文件,已经运行的进程如何加载新的image(可执行程序文件...阅读全文

博文 2019-07-02 21:32:44 Yt_cc