Запитання з тегом «go»

Go - мова програмування з відкритим кодом. Він має статичний тип, із синтаксисом, який походить від C, додає автоматичне управління пам’яттю, безпеку типу, деякі можливості динамічного набору тексту, додаткові вбудовані типи, такі як масиви змінної довжини (називаються фрагментами) та карти ключових значень, та велика стандартна бібліотека.


10
Чому Go так повільно (порівняно з Java)?
Як ми бачили з гри The Computer Language Benchmarks Game 2010 року: Перехід у середньому на 10 разів повільніше, ніж у С У 3 рази повільніше, ніж у Java !? Як це може бути, маючи на увазі, що компілятор Go виробляє власний код для виконання? Незрілі компілятори для Go? Або …

12
Чи існує спосіб створення UUID з мовою go
У мене є такий код: u := make([]byte, 16) _, err := rand.Read(u) if err != nil { return } u[8] = (u[8] | 0x80) & 0xBF // what does this do? u[6] = (u[6] | 0x40) & 0x4F // what does this do? return hex.EncodeToString(u) Він повертає рядок довжиною …
109 go  uuid 

13
Як імпортувати конкретну версію пакета за допомогою go get?
виходячи з Nodeсередовища, я використовував для встановлення конкретної версії lib постачальника в папку проекту ( node_modules), кажучи npmпро встановлення цієї версії цього lib з package.jsonконсолі або навіть безпосередньо з консолі, наприклад: $ npm install express@4.0.0 Потім я імпортував цю версію цього пакету в мій проект лише за допомогою: var express …


11
Методи поводження з помилками [закрито]
Закрито . Це питання ґрунтується на думці . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито 12 місяців тому . Удосконаліть це питання Я тільки починаю з Go. Мій код починає мати багато цього: …
108 go 

3
Приклад для sync.WaitGroup правильний?
Чи є в цьому прикладі sync.WaitGroupправильним використання ? Це дає очікуваний результат, але я не впевнений у wg.Add(4)своїх позиціях та позиціях wg.Done(). Чи має сенс додати відразу чотири гороутини wg.Add()? http://play.golang.org/p/ecvYHiie0P package main import ( "fmt" "sync" "time" ) func dosomething(millisecs time.Duration, wg *sync.WaitGroup) { duration := millisecs * time.Millisecond …
108 go  goroutine 


11
Як записати журнал у файл
Я намагаюся записати файл журналу за допомогою Go. Я спробував декілька підходів, усі вони зазнали невдачі. Це те, що я спробував: func TestLogging(t *testing.T) { if !FileExists("logfile") { CreateFile("logfile") } f, err := os.Open("logfile") if err != nil { t.Fatalf("error: %v", err) } // attempt #1 log.SetOutput(io.MultiWriter(os.Stderr, f)) log.Println("hello, logfile") …
108 go  logging 

2
Значення приймача порівняно з приймачем покажчика
Для мене дуже незрозуміло, у якому випадку я б хотів використовувати приймач значення, а не завжди використовувати приймач вказівника. Щоб скласти резюме з документів: type T struct { a int } func (tv T) Mv(a int) int { return 0 } // value receiver func (tp *T) Mp(f float32) float32 …
108 function  pointers  go 

5
Як чекати, коли всі goututines закінчать, не використовуючи час. Сплячий?
Цей код вибирає всі файли xml у тій самій папці, оскільки викликаний виконуваний файл і асинхронно застосовує обробку до кожного результату методом зворотного виклику (у прикладі нижче виводиться лише ім'я файлу). Як я можу не використовувати метод сну, щоб уникнути виходу основного методу? У мене проблеми з обгортанням голови навколо …

3
Ітерація через поля структури в Go
В основному, єдиний спосіб (про який я знаю) пройти через значення полів a structтакий: type Example struct { a_number uint32 a_string string } //... r := &Example{(2 << 31) - 1, "...."}: for _, d:= range []interface{}{ r.a_number, r.a_string, } { //do something with the d } Мені було цікаво, …
107 go  go-reflect 

4
Як розбити довгий рядок коду в Golang?
Виходячи з Python, я не звик бачити рядки коду довше 80 стовпців. Отже, коли я стикаюся з цим: err := database.QueryRow("select * from users where user_id=?", id).Scan(&ReadUser.ID, &ReadUser.Name, &ReadUser.First, &ReadUser.Last, &ReadUser.Email) Я намагався розірвати це err := database.QueryRow("select * from users where user_id=?", id) \ .Scan(&ReadUser.ID, &ReadUser.Name, &ReadUser.First, &ReadUser.Last, &ReadUser.Email) …
107 go  syntax 

4
Як я можу ефективно завантажити великий файл за допомогою Go?
Чи є спосіб завантажити великий файл за допомогою Go, який буде зберігати вміст безпосередньо у файл, а не зберігати його в пам'яті перед тим, як записати його у файл? Оскільки файл настільки великий, що зберігати його в пам'яті перед тим, як записати його у файл, буде використано всю пам'ять.
106 go 

2
Як відобразити, як ви встановлюєте значення структури структури?
маючи орієнтовний час роботи з полями структури за допомогою reflectпакету. зокрема, не з'ясували, як встановити значення поля. наберіть t структура {fi int; fs string} var rt = t {123, "jblow"} var i64 int64 = 456 отримання назви поля i - це, здається, працює var field = reflect.TypeOf(r).Field(i).Name отримання значення поля …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.