Bagaimanakah saya boleh menanggalkan proses Go daripada induknya dalam Windows menggunakan `StartProcess()`?

Susan Sarandon
Lepaskan: 2024-11-03 19:45:29
asal
698 orang telah melayarinya

How can I detach a Go process from its parent in Windows using `StartProcess()`?

Menyahgandingkan Proses dalam Go

Untuk memisahkan proses yang dibuat menggunakan StartProcess() daripada induknya (dalam kes ini, gesaan baris arahan), seseorang boleh memanfaatkan pilihan pemaut -Hwindowsgui yang disediakan oleh rantai alat Go.

Kod Asal

Kod Go yang disediakan cuba untuk mencipta proses yang dipisahkan menggunakan StartProcess(), dengan konfigurasi berikut:

<code class="go">var procAttr os.ProcAttr 
procAttr.Files = []*os.File{nil, nil, nil}</code>
Salin selepas log masuk

Semasa menambah procAttr.Sys.HideWindow = true bertujuan untuk menyembunyikan tetingkap yang dikaitkan dengan proses, ia membawa kepada ralat "panik" kepada penunjuk memori yang salah.

Penyelesaian

The penyelesaian yang betul ialah menggunakan pilihan pemaut -Hwindowsgui apabila menyusun atur cara Go. Pilihan ini melumpuhkan penciptaan tetingkap konsol untuk proses semasa pelaksanaan:

go tool 8l -o output.exe -Hwindowsgui input.8
Salin selepas log masuk

Dengan menggunakan pilihan pemaut -Hwindowsgui, proses dibuat tanpa tetingkap konsol, dengan berkesan menyahgandingannya daripada gesaan arahan. Ini membolehkan proses berjalan di latar belakang bebas daripada proses induk.

Atas ialah kandungan terperinci Bagaimanakah saya boleh menanggalkan proses Go daripada induknya dalam Windows menggunakan `StartProcess()`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan