我写了一个更新函数,但是多次执行会报错context deadline exceeded。
我的功能:
func Update(link string, m bson.M) {
configInfo := config.Config()
// client := GetInstance().client
// ctx := GetInstance().ctx
client, _ := mongo.NewClient(options.Client().ApplyURI("mongodb://localhost:27017"))
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel()
err := client.Connect(ctx)
if err != nil {
fmt.Print("connect error!")
fmt.Println(err)
}
db := client.Database("test")
lianjia := db.Collection("test")
_, err = lianjia.UpdateOne(ctx, bson.M{"Link": link}, bson.M{"$set": m})
if err != nil {
fmt.Print("update error!")
fmt.Println(err)
}
}
Run Code Online (Sandbox Code Playgroud)
输出:
update error!context deadline exceeded
Run Code Online (Sandbox Code Playgroud) 我正在寻找一种快速的方法来生成小于2 ^ 64的k个非负整数,其中,在基数2中,任意两个数之间的最小汉明距离尽可能高.
例如,如果我正在寻找k = 4的数字并且它们应该小于2 ^ 4它们可以是:
0000
0011
1100
1111
并且最小汉明距离将是2.
是否有快速算法为给定的k生成这些数字?我将得到大约10 ^ 4的k.
或者,产生一组数字的算法也可以正常工作,所述数字具有成对的汉明距离大于给定值.
p1 = (0, 10, 1)
p2 = (0, -20, -2)
p3 = (0,10,2)
Run Code Online (Sandbox Code Playgroud)
嗨,
我有上面的代码,我只想快速计算每个范围内有多少项而不迭代它?(它是一些嵌套循环的一部分).所以p1会返回9.
还有更好的方法将这些变量传递给范围函数吗?
现在我起诉:
range(p1[0], p1[1], p1[2])
Run Code Online (Sandbox Code Playgroud) 我一直在CodingBat上练习,我被困在Logic-1> alarm_clock问题上.这是我的代码
def alarm_clock(day, vacation):
if 0 < day < 6 and not vacation:
return "7:00"
elif day == 0 or day == 6 and not vacation:
return "10:00"
elif day == 6 or day == 0 and vacation:
return "off"
else:
return "10:00"
Run Code Online (Sandbox Code Playgroud)
但是,该网站告诉我,我的代码不正确. 这是网站
我正在尝试使用Go自动化我的侦察工具.到目前为止,我可以在kali(Nikto/whois)中运行两个基本工具.现在我希望它们并行执行,而不是等待一个函数完成.读了一下之后,我才知道这可以通过使用goroutines来实现.但我的代码似乎不起作用:
package main
import (
"log"
"os/exec"
"os"
"fmt"
)
var url string
func nikto(){
cmd := exec.Command("nikto","-h",url)
cmd.Stdout = os.Stdout
err := cmd.Run()
if err != nil {
log.Fatal(err)
}
}
func whois() {
cmd := exec.Command("whois","google.co")
cmd.Stdout = os.Stdout
err := cmd.Run()
if err !=nil {
log.Fatal(err)
}
}
func main(){
fmt.Printf("Please input URL")
fmt.Scanln(&url)
nikto()
go whois()
}
Run Code Online (Sandbox Code Playgroud)
我明白在这里,go whois()会一直执行main(),但我仍然看不到它们都执行并行.