netpoll

(โ˜… 4,601)

A high-performance non-blocking I/O networking framework focusing on RPC scenarios.

  • .gitignore
  • .golangci.yaml
  • .licenserc.yaml
  • _typos.toml
  • CODE_OF_CONDUCT.md
  • connection.go
  • connection_errors.go
  • connection_errors_test.go
  • connection_impl.go
  • connection_lock.go
  • connection_onevent.go
  • connection_reactor.go
  • connection_reuse_linux.go
  • connection_reuse_linux_test.go
  • connection_test.go
  • CONTRIBUTING.md
  • CREDITS
  • eventloop.go
  • fd_operator.go
  • fd_operator_cache.go
  • fd_operator_cache_test.go
  • go.mod
  • go.sum
  • LICENSE
  • lint.sh
  • net_dialer.go
  • net_dialer_test.go
  • net_io.go
  • net_listener.go
  • net_listener_test.go
  • net_netfd.go
  • net_netfd_conn.go
  • net_polldesc.go
  • net_polldesc_test.go
  • net_sock.go
  • net_tcpsock.go
  • net_unixsock.go
  • netpoll_config.go
  • netpoll_options.go
  • netpoll_server.go
  • netpoll_unix.go
  • netpoll_unix_test.go
  • netpoll_windows.go
  • nocopy.go
  • nocopy_linkbuffer.go
  • nocopy_linkbuffer_norace.go
  • nocopy_linkbuffer_race.go
  • nocopy_linkbuffer_test.go
  • nocopy_readwriter.go
  • nocopy_readwriter_test.go
  • NOTICE
  • poll.go
  • poll_default.go
  • poll_default_bsd.go
  • poll_default_bsd_norace.go
  • poll_default_bsd_race.go
  • poll_default_linux.go
  • poll_default_linux_norace.go
  • poll_default_linux_race.go
  • poll_default_linux_test.go
  • poll_loadbalance.go
  • poll_manager.go
  • poll_manager_test.go
  • poll_test.go
  • README.md
  • README_CN.md
  • sys_epoll_linux.go
  • sys_epoll_linux_amd64.go
  • sys_epoll_linux_arm64.go
  • sys_epoll_linux_other.go
  • sys_epoll_linux_riscv64.go
  • sys_exec.go
  • sys_exec_test.go
  • sys_keepalive_darwin.go
  • sys_keepalive_openbsd.go
  • sys_keepalive_unix.go
  • sys_sendmsg_bsd.go
  • sys_sendmsg_linux.go
  • sys_sockopt_bsd.go
  • sys_sockopt_linux.go
  • test_conns.sh

๐Ÿš€ Installation Guide

1. Get the code
git clone https://github.com/cloudwego/netpoll

Downloads the entire project code from GitHub to your computer.

cd netpoll

Moves into the project folder you just downloaded.

2. Go

Medium Recommended
Prerequisites
  • Git Needed to download the project code from GitHub.
  • Go The Go compiler and toolchain.
go build ./...

Compiles the Go program into an executable.

go run .

Runs the Go program directly without a separate build step.

โœ… If the build finishes without errors, it worked. If you used go run ., check the terminal output.
// repository documentation