Thanks for all the comments.  I did finally figure it 
out.  https://play.golang.org/p/ghCT6DCDLJz

On lines 69-70 changed that code from and exec.Command to exec.Start 
allowing me to sleep for the desired amount of time and then signal(sigint) 
the command via cmd.Process.Signal(syscall.SIGINT) 

Nate

On Thursday, August 9, 2018 at 9:51:53 PM UTC-4, [email protected] wrote:
>
> https://play.golang.org/p/mr58JS4WsJV
>
> Okay, I realize now that I didn't do a very good job in my first post of 
> explaining my problem, so I'll trying again.  In the above code I need to 
> signal(sigint or sigterm) the exec.CommandContext on line 69 that is 
> blocking so it will stop and finish the goroutine.  The goal behind the 
> code is to set a record duration and then stop the blocking command after 
> the record timer has been met and exit the goroutine normally.  So far I 
> haven't been able to figure out how to signal the command to stop.  I have 
> two tuners that can be recording a the same time, so I need them running in 
> goroutines so the main thread can do other things.  I read through the 
> context package that you recommended, but still can't get it to work. 
>
> Thanks
>
> On Wednesday, August 8, 2018 at 12:20:11 AM UTC-4, Ian Lance Taylor wrote:
>>
>> On Tue, Aug 7, 2018 at 7:02 PM,  <[email protected]> wrote: 
>> > 
>> > https://play.golang.org/p/d5n9bYmya3r 
>> > 
>> > I'm new to the go language and trying to figure out how to sigint a 
>> blocking 
>> > goroutine.  in the playground code I included an infinite for loop to 
>> > simulate the blocking. In my real world use the for block would be a 
>> long 
>> > running file save from an external device.  I appreciate any advice or 
>> > direction that is given. 
>>
>> I'm not sure quite what you mean, but in general you can not send a 
>> signal to a goroutine in Go.  Goroutines are not threads.  If you want 
>> a goroutine to be interruptible, you must write the goroutine to check 
>> whether something is trying to interrupt it; the standard library's 
>> "context" package is often used for this purpose. 
>>
>> Ian 
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to