X7ROOT File Manager
Current Path:
/opt/golang/1.17.2/src/os/signal
opt
/
golang
/
1.17.2
/
src
/
os
/
signal
/
📁
..
📄
doc.go
(10.66 KB)
📄
example_test.go
(1001 B)
📄
example_unix_test.go
(1.25 KB)
📁
internal
📄
sig.s
(410 B)
📄
signal.go
(8.28 KB)
📄
signal_cgo_test.go
(6.13 KB)
📄
signal_linux_test.go
(1.11 KB)
📄
signal_plan9.go
(1.02 KB)
📄
signal_plan9_test.go
(3.59 KB)
📄
signal_test.go
(26.72 KB)
📄
signal_unix.go
(1.15 KB)
📄
signal_windows_test.go
(1.94 KB)
Editing: signal_linux_test.go
// Copyright 2020 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. //go:build linux // +build linux package signal import ( "os" "syscall" "testing" "time" ) const prSetKeepCaps = 8 // This test validates that syscall.AllThreadsSyscall() can reliably // reach all 'm' (threads) of the nocgo runtime even when one thread // is blocked waiting to receive signals from the kernel. This monitors // for a regression vs. the fix for #43149. func TestAllThreadsSyscallSignals(t *testing.T) { if _, _, err := syscall.AllThreadsSyscall(syscall.SYS_PRCTL, prSetKeepCaps, 0, 0); err == syscall.ENOTSUP { t.Skip("AllThreadsSyscall disabled with cgo") } sig := make(chan os.Signal, 1) Notify(sig, os.Interrupt) for i := 0; i <= 100; i++ { if _, _, errno := syscall.AllThreadsSyscall(syscall.SYS_PRCTL, prSetKeepCaps, uintptr(i&1), 0); errno != 0 { t.Fatalf("[%d] failed to set KEEP_CAPS=%d: %v", i, i&1, errno) } } select { case <-time.After(10 * time.Millisecond): case <-sig: t.Fatal("unexpected signal") } Stop(sig) }
Upload File
Create Folder