Kill.go

package script

import (
	"fmt"

	"saseul/staff/processmanager"
)

// Kill ๊ตฌ์กฐ์ฒด๋Š” ๋ชจ๋“  ์‹คํ–‰ ์ค‘์ธ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ข…๋ฃŒํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๋‹ด๋‹นํ•ฉ๋‹ˆ๋‹ค.
type Kill struct {
	Description string
}

// NewKill ํ•จ์ˆ˜๋Š” Kill ๊ตฌ์กฐ์ฒด์˜ ์ƒˆ๋กœ์šด ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์ดˆ๊ธฐํ™”ํ•ฉ๋‹ˆ๋‹ค.
func NewKill() *Kill {
	return &Kill{
		Description: "Kill all running processes.",
	}
}

// Main ํ•จ์ˆ˜๋Š” ๋ชจ๋“  ์‹คํ–‰ ์ค‘์ธ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.
func (k *Kill) Main() {
	fmt.Println("\nKilling all processes ...")

	// ๊ฐ ํ”„๋กœ์„ธ์Šค ํƒ€์ž…์— ๋Œ€ํ•ด processmanager.Kill ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.
	processmanager.Kill(processmanager.MASTER)
	processmanager.Kill(processmanager.RESOURCE_MINER)
	processmanager.Kill(processmanager.CHAIN_MAKER)
	processmanager.Kill(processmanager.COLLECTOR)
	processmanager.Kill(processmanager.DATA_POOL)
	processmanager.Kill(processmanager.PEER_SEARCHER)

	fmt.Println("All processes have been killed successfully.\n")
}

Last updated