You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
23 lines
656 B
Go
23 lines
656 B
Go
//////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Given is a mock process which runs indefinitely and blocks the
|
|
// program. Right now the only way to stop the program is to send a
|
|
// SIGINT (Ctrl-C). Killing a process like that is not graceful, so we
|
|
// want to try to gracefully stop the process first.
|
|
//
|
|
// Change the program to do the following:
|
|
// 1. On SIGINT try to gracefully stop the process using
|
|
// `proc.Stop()`
|
|
// 2. If SIGINT is called again, just kill the program (last resort)
|
|
//
|
|
|
|
package main
|
|
|
|
func main() {
|
|
// Create a process
|
|
proc := MockProcess{}
|
|
|
|
// Run the process (blocking)
|
|
proc.Run()
|
|
}
|