我尝试安装InfluxDB客户端.但安装失败了.这是我的追踪:
go get -u -v -x github.com/influxdb/influxdb/client
github.com/influxdb/influxdb (download)
...
git remote -v
Fetching https://golang.org/x/crypto/bcrypt?go-get=1
[1] 6625 segmentation fault (core dumped) go get -u -v -x github.com/influxdb/influxdb/client
Run Code Online (Sandbox Code Playgroud)
我没有找到包golang.org/x/crypto/bcrypt到GOROOT和GOPATH.
当我尝试安装crypto/bcrypt时 出现此错误:
go get -u -v golang.org/x/crypto/bcrypt
Fetching https://golang.org/x/crypto/bcrypt?go-get=1
[1] 7667 segmentation fault (core dumped) go get -u -v golang.org/x/crypto/bcrypt
Run Code Online (Sandbox Code Playgroud)
我如何安装golang.org/x/crypto/bcrypt?
我的golang版本是go版本1.4.2 gccgo
我想在一个golang应用程序中创建两个http服务器.例:
package main
import (
"io"
"net/http"
)
func helloOne(w http.ResponseWriter, r *http.Request) {
io.WriteString(w, "Hello world one!")
}
func helloTwo(w http.ResponseWriter, r *http.Request) {
io.WriteString(w, "Hello world two!")
}
func main() {
// how to create two http server instatce?
http.HandleFunc("/", helloOne)
http.HandleFunc("/", helloTwo)
go http.ListenAndServe(":8001", nil)
http.ListenAndServe(":8002", nil)
}
Run Code Online (Sandbox Code Playgroud)
如何创建两个http服务器实例并为它们添加处理程序?
我想使用multiprocessing.Pool,但是multiprocessing.Pool不能在超时后中止任务。我找到了解决方案,并对其进行了一些修改。
from multiprocessing import util, Pool, TimeoutError
from multiprocessing.dummy import Pool as ThreadPool
import threading
import sys
from functools import partial
import time
def worker(y):
print("worker sleep {} sec, thread: {}".format(y, threading.current_thread()))
start = time.time()
while True:
if time.time() - start >= y:
break
time.sleep(0.5)
# show work progress
print(y)
return y
def collect_my_result(result):
print("Got result {}".format(result))
def abortable_worker(func, *args, **kwargs):
timeout = kwargs.get('timeout', None)
p = ThreadPool(1)
res = p.apply_async(func, args=args)
try:
# Wait timeout …Run Code Online (Sandbox Code Playgroud) python multithreading multiprocessing python-multithreading python-multiprocessing