當前位置: 首頁>>代碼示例>>Golang>>正文


Golang MEMORYSTATUSEX.dwLength方法代碼示例

本文整理匯總了Golang中C.MEMORYSTATUSEX.dwLength方法的典型用法代碼示例。如果您正苦於以下問題:Golang MEMORYSTATUSEX.dwLength方法的具體用法?Golang MEMORYSTATUSEX.dwLength怎麽用?Golang MEMORYSTATUSEX.dwLength使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在C.MEMORYSTATUSEX的用法示例。


在下文中一共展示了MEMORYSTATUSEX.dwLength方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: Get

func (self *Mem) Get() error {
	var statex C.MEMORYSTATUSEX
	statex.dwLength = C.DWORD(unsafe.Sizeof(statex))

	succeeded := C.GlobalMemoryStatusEx(&statex)
	if succeeded == C.FALSE {
		lastError := C.GetLastError()
		return fmt.Errorf("GlobalMemoryStatusEx failed with error: %d", int(lastError))
	}

	self.Total = uint64(statex.ullTotalPhys)
	return nil
}
開發者ID:abimaelmartell,項目名稱:gosigar,代碼行數:13,代碼來源:sigar_windows.go

示例2: PhysmemAvail

func PhysmemAvail() uint64 {
	var msex C.MEMORYSTATUSEX
	msex.dwLength = C.DWORD(unsafe.Sizeof(msex))

	/* Preferable */
	if C.GlobalMemoryStatusEx(&msex) != C.FALSE {
		return uint64(msex.ullAvailPhys)
	}

	/* Fallback because it's incorrect over 4GB */
	var ms C.MEMORYSTATUS
	C.GlobalMemoryStatus(&ms)
	return uint64(ms.dwAvailPhys)
}
開發者ID:HarryBird,項目名稱:go-gnulib,代碼行數:14,代碼來源:info_windows.go

示例3: Get

func (self *Mem) Get() error {
	var statex C.MEMORYSTATUSEX
	statex.dwLength = C.DWORD(unsafe.Sizeof(statex))

	succeeded := C.GlobalMemoryStatusEx(&statex)
	if succeeded == C.FALSE {
		return syscall.GetLastError()
	}

	self.Total = uint64(statex.ullTotalPhys)
	self.Free = uint64(statex.ullAvailPhys)
	self.Used = self.Total - self.Free
	self.ActualFree = self.Free
	self.ActualUsed = self.Used

	return nil
}
開發者ID:YaSuenag,項目名稱:hsbeat,代碼行數:17,代碼來源:sigar_windows.go


注:本文中的C.MEMORYSTATUSEX.dwLength方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。