mirror of
https://github.com/prometheus-community/windows_exporter.git
synced 2026-10-18 02:29:04 +02:00
mscluster: reuse control buffers and cut per-property allocations (#2673)
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: Jan-Otto Kröpke <mail@jkroepke.de>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
a8adb6d7bc
commit
930609b0e5
@@ -60,7 +60,7 @@ func TestDumpPropertyLists(t *testing.T) {
|
||||
deadline := time.Now().Add(time.Minute)
|
||||
|
||||
for _, code := range []uint32{objectCluster<<24 | ctlGetROCommonProperties, objectCluster<<24 | ctlGetCommonProperties} {
|
||||
data, err := controlBuffer(deadline, 0, func(buffer []byte) (uint32, error) {
|
||||
data, err := controlBufferIn(deadline, newControlBuffer(0), func(buffer []byte) (uint32, error) {
|
||||
var (
|
||||
size uint32
|
||||
pointer *byte
|
||||
@@ -88,7 +88,7 @@ func TestDumpPropertyLists(t *testing.T) {
|
||||
}
|
||||
|
||||
for _, code := range []uint32{resourceTypeGetROCommonProperties, resourceTypeGetCommonProperties, resourceTypeGetPrivateProperties} {
|
||||
data, err := controlBuffer(deadline, 0, func(buffer []byte) (uint32, error) {
|
||||
data, err := controlBufferIn(deadline, newControlBuffer(0), func(buffer []byte) (uint32, error) {
|
||||
var (
|
||||
size uint32
|
||||
pointer *byte
|
||||
@@ -133,11 +133,11 @@ func TestDumpPropertyLists(t *testing.T) {
|
||||
}
|
||||
|
||||
for _, code := range []uint32{resourceGetROCommonProperties, resourceGetCommonProperties, resourceGetROPrivateProperties, resourceGetPrivateProperties} {
|
||||
data, err := resourceBuffer(handle, code, 0, deadline)
|
||||
data, err := resourceBufferIn(handle, code, nil, deadline)
|
||||
logPropertyList(t, fmt.Sprintf("resource %q %#x", name.name, code), data, err)
|
||||
}
|
||||
|
||||
data, err := resourceBuffer(handle, resourceGetType, 0, deadline)
|
||||
data, err := resourceBufferIn(handle, resourceGetType, nil, deadline)
|
||||
t.Logf("resource %q GET_RESOURCE_TYPE: %s err=%v", name.name, hex.EncodeToString(data), err)
|
||||
|
||||
closeResource.Call(handle) //nolint:errcheck
|
||||
|
||||
Reference in New Issue
Block a user