Ho installato Go 1.2 su una macchina Windows, scritto un programma fittizio e impostato le variabili d’ambiente GOARCH e GOOS su “AMD64” e “linux”. Quando rilascio il comando ” go build “, ricevo un errore: go build runtime: linux/amd64 must be bootstrapped using make.bat Cosa significa questo?
Ecco un semplice programma go che non funziona: package main import “fmt” type Vertex struct { X int Y int } func main() { v := Vertex{1, 2} fmt.Println(getProperty(&v, “X”)) } func getProperty(v *Vertex, property string) (string) { return v[property] } Errore: prog.go: 18: operazione non valida: v [proprietà] (indice di tipo * Vertex) Quello […]
http://play.golang.org/p/vhaKi5uVmm package main import “fmt” var battle = make(chan string) func warrior(name string, done chan struct{}) { select { case opponent := <-battle: fmt.Printf("%s beat %s\n", name, opponent) case battle <- name: // I lost 🙁 } done <- struct{}{} } func main() { done := make(chan struct{}) langs := []string{"Go", "C", "C++", "Java", "Perl", […]
Sto cercando di caricare immagini dal mio computer su un sito web usando go. Di solito, io uso uno script bash che invia un file e una chiave al server: curl -F “image”[email protected]”IMAGEFILE” -F “key”=”KEY” URL funziona bene, ma sto cercando di convertire questa richiesta nel mio programma golang. http://matt.aimonetti.net/posts/2013/07/01/golang-multipart-file-upload-example/ Ho provato questo link e […]
Voglio verificare che due strutture siano uguali, ma abbiamo qualche problema: package main import ( “fmt” “reflect” ) type T struct { X int Y string Z []int M map[string]int } func main() { t1 := T{ X:1, Y:”lei”, Z:[]int{1,2,3}, M:map[string]int{ “a”:1, “b”:2, }, } t2 := T{ X:1, Y:”lei”, Z:[]int{1,2,3}, M:map[string]int{ “a”:1, “b”:2, }, […]
Ho trovato una funzione chiamata MethodByName() qui http://golang.org/pkg/reflect/#Value.MethodByName ma non è esattamente quello che voglio! (forse perché non so come usarlo … non riesco a trovare alcun esempio con esso). Quello che voglio è: type MyStruct struct { //some feilds here } func (p *MyStruct) MyMethod { println(“My statement.”); } CallFunc(“MyStruct”, “MyMethod”); //print out My […]
La libreria standard di Go non ha una funzione destinata esclusivamente a verificare se un file esiste o meno (come os.path.exists di Python). Qual è il modo idiomatico per farlo?
Sono un nuovo programmatore di Go, proveniente dal mondo dello sviluppo di applicazioni e servizi web. Ci scusiamo se questa è una domanda da derpare di herp, ma il mio cercare su google per una risposta non ha trovato nulla. Inoltre, si tratta di un territorio di errore del server borderline, ma poiché sono più […]
Il mio livello dati utilizza l’aggregazione Mongo di una quantità decente e, in media, le query richiedono 500-650 ms per la restituzione. Sto usando mgo . Di seguito viene mostrata una funzione di query di esempio che rappresenta la maggior parte delle mie query. func (r userRepo) GetUserByID(id string) (User, error) { info, err := […]
Ho un programma go che genera molte richieste HTTP da più coroutine. dopo aver eseguito per un po ‘, il programma sputa un errore: connect: non può assegnare l’indirizzo richiesto. Quando si verifica con netstat, ottengo un numero elevato (28229) di connessioni in TIME_WAIT. L’alto numero di socket TIME_WAIT si verifica quando il numero di […]