Golang cmd.Start() 有时挂在保险丝安装目录上
来源:stackoverflow
时间:2024-04-14 22:33:36 406浏览 收藏
你在学习Golang相关的知识吗?本文《Golang cmd.Start() 有时挂在保险丝安装目录上》,主要介绍的内容就涉及到,如果你想提升自己的开发能力,就不要错过这篇文章,大家要知道编程理论基础和实战操作都是不可或缺的哦!
问题内容
在 go 中我正在做类似的事情:
cmd := exec.Command(shell, "-c", someCmd) [...] errReader, err := cmd.StderrPipe() outReader, err := cmd.StdoutPipe() [...do something with those readers...] cmd.Dir = aDirectory [...] err = cmd.Start()
如果 adirectory 是普通目录,start() 总是立即返回 ~。
但是,如果我成功运行 ioutil.readdir(adirectory)
的进程内保险丝安装(在设置 cmd.dir 之后安装),则大约有 1/1000 次 start() 挂起。我必须 sudo umount -f adirectory
来结束 go 进程。
我还没有深入了解 start() 来查看它挂在哪里,但有什么想法可能会导致它出现问题吗?
我最好的选择是使用 commandcontext()
来代替 start() 调用超时吗?您将如何很好地实现这一点?
解决方案
似乎是某种神奇的时间问题。我注意到 os/exec_posix.go 中的 startprocess() 执行了 stat() 调用,因此我在调用 start() 之前自己执行了 stat(),问题似乎已经消失(或者比 1/1000 更罕见) )。
编辑:仍然会发生,只是比较罕见。挂起时的堆栈跟踪:
goroutine 648 [running]: github.com/VertebrateResequencing/wr/cmd.glob..func21.2(0xc0003c5140) /home/ubuntu/wr/cmd/runner.go:205 +0x131 created by github.com/VertebrateResequencing/wr/cmd.glob..func21 /home/ubuntu/wr/cmd/runner.go:200 +0x69e goroutine 1 [runnable]: syscall.Close(0xf, 0xc0006cedc0, 0x4) /home/ubuntu/go/src/syscall/zsyscall_linux_amd64.go:309 +0xcc syscall.forkExec(0xc0005a6d10, 0x9, 0xc0002fd8c0, 0x3, 0x3, 0xc0008288a8, 0x20, 0x0, 0xc00054cda0) /home/ubuntu/go/src/syscall/exec_unix.go:202 +0x3a9 syscall.StartProcess(0xc0005a6d10, 0x9, 0xc0002fd8c0, 0x3, 0x3, 0xc0008288a8, 0x2, 0x4, 0x0, 0x0) /home/ubuntu/go/src/syscall/exec_unix.go:241 +0x64 os.startProcess(0xc0005a6d10, 0x9, 0xc0002fd8c0, 0x3, 0x3, 0xc000828a38, 0xc0000d6280, 0x27, 0x27) /home/ubuntu/go/src/os/exec_posix.go:46 +0x213 os.StartProcess(0xc0005a6d10, 0x9, 0xc0002fd8c0, 0x3, 0x3, 0xc000828a38, 0x0, 0x0, 0x101) /home/ubuntu/go/src/os/exec.go:102 +0x7c os/exec.(*Cmd).Start(0xc000235b80, 0x351a1ba9ae4, 0x287cf80) /home/ubuntu/go/src/os/exec/exec.go:383 +0x4bc github.com/VertebrateResequencing/wr/jobqueue.(*Client).Execute(0xc0003829a0, 0xc00015fb80, 0xc00035ea88, 0x4, 0x0, 0x0) /home/ubuntu/wr/jobqueue/client.go:753 +0x144c github.com/VertebrateResequencing/wr/cmd.glob..func21(0x286a2e0, 0xc000382840, 0x0, 0xb) /home/ubuntu/wr/cmd/runner.go:210 +0x74e github.com/spf13/cobra.(*Command).execute(0x286a2e0, 0xc000382790, 0xb, 0xb, 0x286a2e0, 0xc000382790) /home/ubuntu/go/pkg/mod/github.com/spf13/[email protected]/command.go:766 +0x2cc github.com/spf13/cobra.(*Command).ExecuteC(0x286a080, 0x14e26de, 0x286a080, 0xc0004dff30) /home/ubuntu/go/pkg/mod/github.com/spf13/[email protected]/command.go:852 +0x2fd github.com/spf13/cobra.(*Command).Execute(0x286a080, 0xc0004dff88, 0x405700) /home/ubuntu/go/pkg/mod/github.com/spf13/[email protected]/command.go:800 +0x2b github.com/VertebrateResequencing/wr/cmd.Execute() /home/ubuntu/wr/cmd/root.go:83 +0x2d main.main() /home/ubuntu/wr/main.go:120 +0x90 goroutine 18 [runnable]: os/signal.process(0x1b5d5a0, 0xc0004d8000) /home/ubuntu/go/src/os/signal/signal.go:223 +0xf6 os/signal.loop() /home/ubuntu/go/src/os/signal/signal_unix.go:23 +0x52 created by os/signal.init.0 /home/ubuntu/go/src/os/signal/signal_unix.go:29 +0x41 goroutine 33 [chan receive, 8 minutes]: k8s.io/klog.(*loggingT).flushDaemon(0x287d580) /home/ubuntu/go/pkg/mod/k8s.io/[email protected]/klog.go:941 +0x8b created by k8s.io/klog.init.0 /home/ubuntu/go/pkg/mod/k8s.io/[email protected]/klog.go:403 +0x69 goroutine 175 [runnable]: github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount.func1(0xc000344d20, 0xc00015f340) /home/ubuntu/wr/jobqueue/job.go:574 +0x38 created by github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount /home/ubuntu/wr/jobqueue/job.go:573 +0x930 goroutine 9 [select, 8 minutes]: nanomsg.org/go-mangos.(*dialer).dialer(0xc00052a1c0) /home/ubuntu/go/pkg/mod/nanomsg.org/[email protected]/core.go:629 +0x347 created by nanomsg.org/go-mangos.(*dialer).Dial /home/ubuntu/go/pkg/mod/nanomsg.org/[email protected]/core.go:584 +0xbc goroutine 38 [select, 8 minutes]: nanomsg.org/go-mangos/protocol/req.(*req).resender(0xc0003828f0) /home/ubuntu/go/pkg/mod/nanomsg.org/[email protected]/protocol/req/req.go:83 +0x100 created by nanomsg.org/go-mangos/protocol/req.(*req).AddEndpoint.func1 /home/ubuntu/go/pkg/mod/nanomsg.org/[email protected]/protocol/req/req.go:185 +0x57 goroutine 39 [IO wait, 7 minutes]: internal/poll.runtime_pollWait(0x7f0b6fcc5d60, 0x72, 0xc0005598c0) /home/ubuntu/go/src/runtime/netpoll.go:173 +0x66 internal/poll.(*pollDesc).wait(0xc000562018, 0x72, 0xffffffffffffff00, 0x1b51640, 0x2804620) /home/ubuntu/go/src/internal/poll/fd_poll_runtime.go:85 +0x9a internal/poll.(*pollDesc).waitRead(0xc000562018, 0xc00046e800, 0x800, 0x800) /home/ubuntu/go/src/internal/poll/fd_poll_runtime.go:90 +0x3d internal/poll.(*FD).Read(0xc000562000, 0xc00046e800, 0x800, 0x800, 0x0, 0x0, 0x0) /home/ubuntu/go/src/internal/poll/fd_unix.go:169 +0x179 net.(*netFD).Read(0xc000562000, 0xc00046e800, 0x800, 0x800, 0x40884b, 0xc00002e000, 0x16bebe0) /home/ubuntu/go/src/net/fd_unix.go:202 +0x4f net.(*conn).Read(0xc000418008, 0xc00046e800, 0x800, 0x800, 0x0, 0x0, 0x0) /home/ubuntu/go/src/net/net.go:177 +0x68 crypto/tls.(*block).readFromUntil(0xc000566090, 0x1b4f600, 0xc000418008, 0x5, 0xc000418008, 0xc00046e805) /home/ubuntu/go/src/crypto/tls/conn.go:492 +0x89 crypto/tls.(*Conn).readRecord(0xc00031c000, 0x19c2117, 0xc00031c120, 0x0) /home/ubuntu/go/src/crypto/tls/conn.go:593 +0xdd crypto/tls.(*Conn).Read(0xc00031c000, 0xc0005a69d0, 0x8, 0x8, 0x0, 0x0, 0x0) /home/ubuntu/go/src/crypto/tls/conn.go:1145 +0xf1 io.ReadAtLeast(0x7f0b6fb25228, 0xc00031c000, 0xc0005a69d0, 0x8, 0x8, 0x8, 0x1633ae0, 0xc000559c01, 0xc0005a69d0) /home/ubuntu/go/src/io/io.go:310 +0x88 io.ReadFull(0x7f0b6fb25228, 0xc00031c000, 0xc0005a69d0, 0x8, 0x8, 0x43b11d, 0xc0003c45f8, 0x0) /home/ubuntu/go/src/io/io.go:329 +0x58 encoding/binary.Read(0x7f0b6fb25228, 0xc00031c000, 0x1b75aa0, 0x289ebd8, 0x15b5060, 0xc0005a69c8, 0x2, 0x2) /home/ubuntu/go/src/encoding/binary/binary.go:171 +0x50a nanomsg.org/go-mangos.(*conn).Recv(0xc0000d0690, 0xc0002c08c0, 0x0, 0x0) /home/ubuntu/go/pkg/mod/nanomsg.org/[email protected]/conn.go:52 +0xa7 nanomsg.org/go-mangos.(*pipe).RecvMsg(0xc0000d06e0, 0xc000559f38) /home/ubuntu/go/pkg/mod/nanomsg.org/[email protected]/pipe.go:109 +0x37 nanomsg.org/go-mangos/protocol/req.(*req).receiver(0xc0003828f0, 0x1b6e220, 0xc0000d06e0) /home/ubuntu/go/pkg/mod/nanomsg.org/[email protected]/protocol/req/req.go:114 +0x91 created by nanomsg.org/go-mangos/protocol/req.(*req).AddEndpoint /home/ubuntu/go/pkg/mod/nanomsg.org/[email protected]/protocol/req/req.go:193 +0x174 goroutine 40 [select, 7 minutes]: nanomsg.org/go-mangos/protocol/req.(*req).sender(0xc0003828f0, 0xc00056e840) /home/ubuntu/go/pkg/mod/nanomsg.org/[email protected]/protocol/req/req.go:149 +0x18e created by nanomsg.org/go-mangos/protocol/req.(*req).AddEndpoint /home/ubuntu/go/pkg/mod/nanomsg.org/[email protected]/protocol/req/req.go:195 +0x1b2 goroutine 51 [runnable]: crypto/tls.(*block).resize(0xc0002fc180, 0xf) /home/ubuntu/go/src/crypto/tls/conn.go:457 +0x72 crypto/tls.(*halfConn).decrypt(0xc000088820, 0xc0002fc180, 0x1f, 0xc0002fc180, 0x0) /home/ubuntu/go/src/crypto/tls/conn.go:314 +0x700 crypto/tls.(*Conn).readRecord(0xc000088700, 0x19c2117, 0xc000088820, 0x455220) /home/ubuntu/go/src/crypto/tls/conn.go:650 +0x27e crypto/tls.(*Conn).Read(0xc000088700, 0xc0002e5000, 0x1000, 0x1000, 0x0, 0x0, 0x0) /home/ubuntu/go/src/crypto/tls/conn.go:1145 +0xf1 net/http.(*persistConn).Read(0xc00007dc20, 0xc0002e5000, 0x1000, 0x1000, 0xc00055cc70, 0x404cd5, 0xc000830480) /home/ubuntu/go/src/net/http/transport.go:1497 +0x75 bufio.(*Reader).fill(0xc000509f80) /home/ubuntu/go/src/bufio/bufio.go:100 +0x10f bufio.(*Reader).Peek(0xc000509f80, 0x1, 0x0, 0x0, 0x1, 0xc0008300c0, 0x0) /home/ubuntu/go/src/bufio/bufio.go:132 +0x3f net/http.(*persistConn).readLoop(0xc00007dc20) /home/ubuntu/go/src/net/http/transport.go:1645 +0x1a2 created by net/http.(*Transport).dialConn /home/ubuntu/go/src/net/http/transport.go:1338 +0x941 goroutine 52 [select, 7 minutes]: net/http.(*persistConn).writeLoop(0xc00007dc20) /home/ubuntu/go/src/net/http/transport.go:1885 +0x113 created by net/http.(*Transport).dialConn /home/ubuntu/go/src/net/http/transport.go:1339 +0x966 goroutine 41 [runnable]: github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount.func1(0xc00089c060, 0xc000402580) /home/ubuntu/wr/jobqueue/job.go:574 +0x38 created by github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount /home/ubuntu/wr/jobqueue/job.go:573 +0x930 goroutine 660 [runnable]: syscall.Syscall(0x0, 0xe, 0xc000cf8000, 0x11000, 0x30, 0x11000, 0x0) /home/ubuntu/go/src/syscall/asm_linux_amd64.s:18 +0x5 syscall.read(0xe, 0xc000cf8000, 0x11000, 0x11000, 0xc0007ed218, 0xc000766b80, 0xc000224408) /home/ubuntu/go/src/syscall/zsyscall_linux_amd64.go:732 +0x5a syscall.Read(0xe, 0xc000cf8000, 0x11000, 0x11000, 0x460f6b, 0xc0007ed230, 0xc000766980) /home/ubuntu/go/src/syscall/syscall_unix.go:172 +0x49 github.com/hanwen/go-fuse/fuse.(*Server).readRequest.func1(0xc000766980, 0x9f7255) /home/ubuntu/go/pkg/mod/github.com/hanwen/[email protected]/fuse/server.go:266 +0x55 github.com/hanwen/go-fuse/fuse.handleEINTR(0xc000776758, 0x15ec360, 0xc00053ee20) /home/ubuntu/go/pkg/mod/github.com/hanwen/[email protected]/fuse/server.go:242 +0x27 github.com/hanwen/go-fuse/fuse.(*Server).readRequest(0xc0007ed1d0, 0xc00003a401, 0xc000000000, 0xc000000000) /home/ubuntu/go/pkg/mod/github.com/hanwen/[email protected]/fuse/server.go:264 +0x163 github.com/hanwen/go-fuse/fuse.(*Server).loop(0xc0007ed1d0, 0xc00084a701) /home/ubuntu/go/pkg/mod/github.com/hanwen/[email protected]/fuse/server.go:381 +0x6b created by github.com/hanwen/go-fuse/fuse.(*Server).readRequest /home/ubuntu/go/pkg/mod/github.com/hanwen/[email protected]/fuse/server.go:291 +0x2d8 goroutine 376 [runnable]: github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount.func1(0xc000344420, 0xc000402dc0) /home/ubuntu/wr/jobqueue/job.go:574 +0x38 created by github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount /home/ubuntu/wr/jobqueue/job.go:573 +0x930 goroutine 122 [runnable]: github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount.func1(0xc0000b1440, 0xc00060e2c0) /home/ubuntu/wr/jobqueue/job.go:574 +0x38 created by github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount /home/ubuntu/wr/jobqueue/job.go:573 +0x930 goroutine 601 [runnable]: syscall.Syscall(0x0, 0xe, 0xc000920000, 0x11000, 0xffffffffffffffff, 0x0, 0x13) /home/ubuntu/go/src/syscall/asm_linux_amd64.s:18 +0x5 syscall.read(0xe, 0xc000920000, 0x11000, 0x11000, 0xc0007ed218, 0xc000766a00, 0xc000830120) /home/ubuntu/go/src/syscall/zsyscall_linux_amd64.go:732 +0x5a syscall.Read(0xe, 0xc000920000, 0x11000, 0x11000, 0x460f6b, 0xc0007ed230, 0xc000766800) /home/ubuntu/go/src/syscall/syscall_unix.go:172 +0x49 github.com/hanwen/go-fuse/fuse.(*Server).readRequest.func1(0xc000766800, 0xc0003a0180) /home/ubuntu/go/pkg/mod/github.com/hanwen/[email protected]/fuse/server.go:266 +0x55 github.com/hanwen/go-fuse/fuse.handleEINTR(0xc00077ef58, 0x15ec360, 0xc00056eee0) /home/ubuntu/go/pkg/mod/github.com/hanwen/[email protected]/fuse/server.go:242 +0x27 github.com/hanwen/go-fuse/fuse.(*Server).readRequest(0xc0007ed1d0, 0xc0003a0001, 0xc000000000, 0xc000000000) /home/ubuntu/go/pkg/mod/github.com/hanwen/[email protected]/fuse/server.go:264 +0x163 github.com/hanwen/go-fuse/fuse.(*Server).loop(0xc0007ed1d0, 0xc0001f7101) /home/ubuntu/go/pkg/mod/github.com/hanwen/[email protected]/fuse/server.go:381 +0x6b created by github.com/hanwen/go-fuse/fuse.(*Server).readRequest /home/ubuntu/go/pkg/mod/github.com/hanwen/[email protected]/fuse/server.go:291 +0x2d8 goroutine 593 [runnable]: github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount.func1(0xc0003531a0, 0xc000403600) /home/ubuntu/wr/jobqueue/job.go:574 +0x38 created by github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount /home/ubuntu/wr/jobqueue/job.go:573 +0x930 goroutine 531 [runnable]: github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount.func1(0xc000352a80, 0xc00015f600) /home/ubuntu/wr/jobqueue/job.go:574 +0x38 created by github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount /home/ubuntu/wr/jobqueue/job.go:573 +0x930 goroutine 662 [runnable]: github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount.func1(0xc000508d20, 0xc00015fb80) /home/ubuntu/wr/jobqueue/job.go:574 +0x38 created by github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount /home/ubuntu/wr/jobqueue/job.go:573 +0x930 goroutine 665 [sleep, 7 minutes]: time.Sleep(0x3333383e) /home/ubuntu/go/src/runtime/time.go:105 +0x14f github.com/minio/minio-go.Client.newRetryTimer.func2(0xc000830060, 0xa, 0xc000830000, 0xc00034c780) /home/ubuntu/go/pkg/mod/github.com/minio/[email protected]+incompatible/retry.go:82 +0x84 created by github.com/minio/minio-go.Client.newRetryTimer /home/ubuntu/go/pkg/mod/github.com/minio/[email protected]+incompatible/retry.go:72 +0x156 goroutine 649 [IO wait, 7 minutes]: internal/poll.runtime_pollWait(0x7f0b6fcc5bc0, 0x72, 0xc000756c58) /home/ubuntu/go/src/runtime/netpoll.go:173 +0x66 internal/poll.(*pollDesc).wait(0xc000352978, 0x72, 0xffffffffffffff01, 0x1b51640, 0x2804620) /home/ubuntu/go/src/internal/poll/fd_poll_runtime.go:85 +0x9a internal/poll.(*pollDesc).waitRead(0xc000352978, 0xc000589001, 0x1000, 0x1000) /home/ubuntu/go/src/internal/poll/fd_poll_runtime.go:90 +0x3d internal/poll.(*FD).Read(0xc000352960, 0xc000589000, 0x1000, 0x1000, 0x0, 0x0, 0x0) /home/ubuntu/go/src/internal/poll/fd_unix.go:169 +0x179 os.(*File).read(0xc0007aee38, 0xc000589000, 0x1000, 0x1000, 0x9f, 0xffffffffffffff01, 0xc000756dc0) /home/ubuntu/go/src/os/file_unix.go:249 +0x4e os.(*File).Read(0xc0007aee38, 0xc000589000, 0x1000, 0x1000, 0x0, 0x7f0b71f316c0, 0x0) /home/ubuntu/go/src/os/file.go:108 +0x69 bufio.(*Reader).fill(0xc000352a20) /home/ubuntu/go/src/bufio/bufio.go:100 +0x10f bufio.(*Reader).ReadSlice(0xc000352a20, 0xc000756f0a, 0xc000000300, 0xc000756e90, 0x4051bf, 0xc000756e70, 0x9f51cb) /home/ubuntu/go/src/bufio/bufio.go:341 +0x36 bufio.(*Reader).ReadBytes(0xc000352a20, 0xc000756f0a, 0x0, 0x0, 0x0, 0x0, 0x0) /home/ubuntu/go/src/bufio/bufio.go:419 +0x70 github.com/VertebrateResequencing/wr/jobqueue.stdFilter.func1(0xc000352a20, 0x1b4d740, 0xc0007f0870, 0xc0003c5260) /home/ubuntu/wr/jobqueue/utils.go:368 +0x4c created by github.com/VertebrateResequencing/wr/jobqueue.stdFilter /home/ubuntu/wr/jobqueue/utils.go:365 +0xcc goroutine 267 [runnable]: github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount.func1(0xc00007f2c0, 0xc000403340) /home/ubuntu/wr/jobqueue/job.go:574 +0x38 created by github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount /home/ubuntu/wr/jobqueue/job.go:573 +0x930 goroutine 279 [runnable]: github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount.func1(0xc00089c4e0, 0xc00060e580) /home/ubuntu/wr/jobqueue/job.go:574 +0x38 created by github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount /home/ubuntu/wr/jobqueue/job.go:573 +0x930 goroutine 657 [semacquire, 7 minutes]: sync.runtime_Semacquire(0xc0007ed2ac) /home/ubuntu/go/src/runtime/sema.go:56 +0x39 sync.(*WaitGroup).Wait(0xc0007ed2ac) /home/ubuntu/go/src/sync/waitgroup.go:130 +0x64 github.com/hanwen/go-fuse/fuse.(*Server).Serve(0xc0007ed1d0) /home/ubuntu/go/pkg/mod/github.com/hanwen/[email protected]/fuse/server.go:332 +0x7b created by github.com/VertebrateResequencing/muxfys.(*MuxFys).Mount /home/ubuntu/muxfys/muxfys.go:367 +0x5bb goroutine 407 [runnable]: github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount.func1(0xc000508a80, 0xc00060e840) /home/ubuntu/wr/jobqueue/job.go:574 +0x38 created by github.com/VertebrateResequencing/wr/jobqueue.(*Job).Mount /home/ubuntu/wr/jobqueue/job.go:573 +0x930 goroutine 659 [runnable]: fmt.Sprintf(0x190224f, 0x30, 0xc000781f58, 0x2, 0x2, 0xc000499801, 0xc0004a4000) /home/ubuntu/go/src/fmt/print.go:201 +0xdd log.Printf(0x190224f, 0x30, 0xc000781f58, 0x2, 0x2) /home/ubuntu/go/src/log/log.go:295 +0x53 github.com/hanwen/go-fuse/fuse.(*Server).handleRequest(0xc0007ed1d0, 0xc000499680, 0xc000499680) /home/ubuntu/go/pkg/mod/github.com/hanwen/[email protected]/fuse/server.go:433 +0x1a4 github.com/hanwen/go-fuse/fuse.(*Server).loop(0xc0007ed1d0, 0xc00084a601) /home/ubuntu/go/pkg/mod/github.com/hanwen/[email protected]/fuse/server.go:400 +0x148 created by github.com/hanwen/go-fuse/fuse.(*Server).readRequest /home/ubuntu/go/pkg/mod/github.com/hanwen/[email protected]/fuse/server.go:291 +0x2d8 goroutine 650 [IO wait, 7 minutes]: internal/poll.runtime_pollWait(0x7f0b6fcc5af0, 0x72, 0xc000853c58) /home/ubuntu/go/src/runtime/netpoll.go:173 +0x66 internal/poll.(*pollDesc).wait(0xc000352af8, 0x72, 0xffffffffffffff01, 0x1b51640, 0x2804620) /home/ubuntu/go/src/internal/poll/fd_poll_runtime.go:85 +0x9a internal/poll.(*pollDesc).waitRead(0xc000352af8, 0xc000620001, 0x1000, 0x1000) /home/ubuntu/go/src/internal/poll/fd_poll_runtime.go:90 +0x3d internal/poll.(*FD).Read(0xc000352ae0, 0xc000620000, 0x1000, 0x1000, 0x0, 0x0, 0x0) /home/ubuntu/go/src/internal/poll/fd_unix.go:169 +0x179 os.(*File).read(0xc0007aee48, 0xc000620000, 0x1000, 0x1000, 0x0, 0x0, 0x40369c) /home/ubuntu/go/src/os/file_unix.go:249 +0x4e os.(*File).Read(0xc0007aee48, 0xc000620000, 0x1000, 0x1000, 0x300000002, 0xc00069db00, 0xc000853dd0) /home/ubuntu/go/src/os/file.go:108 +0x69 bufio.(*Reader).fill(0xc000352ba0) /home/ubuntu/go/src/bufio/bufio.go:100 +0x10f bufio.(*Reader).ReadSlice(0xc000352ba0, 0x7f0b71f3a70a, 0x3f, 0x43cc7b, 0xc0000b17c8, 0xc000853e58, 0x48677c) /home/ubuntu/go/src/bufio/bufio.go:341 +0x36 bufio.(*Reader).ReadBytes(0xc000352ba0, 0x40510a, 0xc0000b1918, 0xc00056c790, 0xc000853fb0, 0x0, 0xc000853f30) /home/ubuntu/go/src/bufio/bufio.go:419 +0x70 github.com/VertebrateResequencing/wr/jobqueue.stdFilter.func1(0xc000352ba0, 0x1b4d740, 0xc0007f08c0, 0xc0003c52c0) /home/ubuntu/wr/jobqueue/utils.go:368 +0x4c created by github.com/VertebrateResequencing/wr/jobqueue.stdFilter /home/ubuntu/wr/jobqueue/utils.go:365 +0xcc
理论要掌握,实操不能落!以上关于《Golang cmd.Start() 有时挂在保险丝安装目录上》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!
声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
-
502 收藏
-
502 收藏
-
501 收藏
-
501 收藏
-
501 收藏
最新阅读
更多>
-
139 收藏
-
204 收藏
-
325 收藏
-
477 收藏
-
486 收藏
-
439 收藏
-
357 收藏
-
352 收藏
-
101 收藏
-
440 收藏
-
212 收藏
-
143 收藏
课程推荐
更多>
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 508次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习