mirror of
https://github.com/golang/go
synced 2024-10-05 02:21:22 -06:00
6ea7bf253c
Moves the network poller from net package into runtime. benchmark old ns/op new ns/op delta BenchmarkTCP4OneShot 316386 287061 -9.27% BenchmarkTCP4OneShot-2 339822 313424 -7.77% BenchmarkTCP4OneShot-3 330057 306589 -7.11% BenchmarkTCP4OneShotTimeout 341775 287061 -16.01% BenchmarkTCP4OneShotTimeout-2 380835 295849 -22.32% BenchmarkTCP4OneShotTimeout-3 398412 328070 -17.66% BenchmarkTCP4Persistent 40622 33392 -17.80% BenchmarkTCP4Persistent-2 44528 35736 -19.74% BenchmarkTCP4Persistent-3 44919 36907 -17.84% BenchmarkTCP4PersistentTimeout 45309 33588 -25.87% BenchmarkTCP4PersistentTimeout-2 50289 38079 -24.28% BenchmarkTCP4PersistentTimeout-3 51559 37103 -28.04% BenchmarkTCP6OneShot 361305 345645 -4.33% BenchmarkTCP6OneShot-2 361305 331976 -8.12% BenchmarkTCP6OneShot-3 376929 347598 -7.78% BenchmarkTCP6OneShotTimeout 361305 322212 -10.82% BenchmarkTCP6OneShotTimeout-2 378882 333928 -11.86% BenchmarkTCP6OneShotTimeout-3 388647 335881 -13.58% BenchmarkTCP6Persistent 47653 35345 -25.83% BenchmarkTCP6Persistent-2 49215 35736 -27.39% BenchmarkTCP6Persistent-3 38474 37493 -2.55% BenchmarkTCP6PersistentTimeout 56637 34369 -39.32% BenchmarkTCP6PersistentTimeout-2 42575 38079 -10.56% BenchmarkTCP6PersistentTimeout-3 44137 37689 -14.61% R=dvyukov CC=golang-dev https://golang.org/cl/8670044
71 lines
1.7 KiB
Go
71 lines
1.7 KiB
Go
// Copyright 2009 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
// +build ignore
|
|
|
|
/*
|
|
Input to cgo.
|
|
|
|
GOARCH=amd64 go tool cgo -cdefs defs_windows.go > defs_windows_amd64.h
|
|
GOARCH=386 go tool cgo -cdefs defs_windows.go > defs_windows_386.h
|
|
*/
|
|
|
|
package runtime
|
|
|
|
/*
|
|
#include <signal.h>
|
|
#include <stdarg.h>
|
|
#include <windef.h>
|
|
#include <winbase.h>
|
|
#include <wincon.h>
|
|
|
|
#ifndef _X86_
|
|
typedef struct {} FLOATING_SAVE_AREA;
|
|
#endif
|
|
#ifndef _AMD64_
|
|
typedef struct {} M128A;
|
|
#endif
|
|
*/
|
|
import "C"
|
|
|
|
const (
|
|
PROT_NONE = 0
|
|
PROT_READ = 1
|
|
PROT_WRITE = 2
|
|
PROT_EXEC = 4
|
|
|
|
MAP_ANON = 1
|
|
MAP_PRIVATE = 2
|
|
|
|
DUPLICATE_SAME_ACCESS = C.DUPLICATE_SAME_ACCESS
|
|
THREAD_PRIORITY_HIGHEST = C.THREAD_PRIORITY_HIGHEST
|
|
|
|
SIGINT = C.SIGINT
|
|
CTRL_C_EVENT = C.CTRL_C_EVENT
|
|
CTRL_BREAK_EVENT = C.CTRL_BREAK_EVENT
|
|
|
|
CONTEXT_CONTROL = C.CONTEXT_CONTROL
|
|
CONTEXT_FULL = C.CONTEXT_FULL
|
|
|
|
EXCEPTION_ACCESS_VIOLATION = C.STATUS_ACCESS_VIOLATION
|
|
EXCEPTION_BREAKPOINT = C.STATUS_BREAKPOINT
|
|
EXCEPTION_FLT_DENORMAL_OPERAND = C.STATUS_FLOAT_DENORMAL_OPERAND
|
|
EXCEPTION_FLT_DIVIDE_BY_ZERO = C.STATUS_FLOAT_DIVIDE_BY_ZERO
|
|
EXCEPTION_FLT_INEXACT_RESULT = C.STATUS_FLOAT_INEXACT_RESULT
|
|
EXCEPTION_FLT_OVERFLOW = C.STATUS_FLOAT_OVERFLOW
|
|
EXCEPTION_FLT_UNDERFLOW = C.STATUS_FLOAT_UNDERFLOW
|
|
EXCEPTION_INT_DIVIDE_BY_ZERO = C.STATUS_INTEGER_DIVIDE_BY_ZERO
|
|
EXCEPTION_INT_OVERFLOW = C.STATUS_INTEGER_OVERFLOW
|
|
|
|
INFINITE = C.INFINITE
|
|
WAIT_TIMEOUT = C.WAIT_TIMEOUT
|
|
)
|
|
|
|
type SystemInfo C.SYSTEM_INFO
|
|
type ExceptionRecord C.EXCEPTION_RECORD
|
|
type FloatingSaveArea C.FLOATING_SAVE_AREA
|
|
type M128a C.M128A
|
|
type Context C.CONTEXT
|
|
type Overlapped C.OVERLAPPED
|