коде чужого человека
Я совсем далек от работы с DLL в golang. Можете подсказать,как можно избавиться от atomic'a? Допустим,тем же syscall
func lazyAddr(pAddr *uintptr, lib *syscall.LazyDLL, procName string) uintptr {
addr := atomic.LoadUintptr(pAddr)
if addr == 0 {
addr = lib.NewProc(procName).Addr()
atomic.StoreUintptr(pAddr, addr)
}
return addr
}
А зачем избавляться? Код выглядит логичным
Обсуждают сегодня