runtime: add more chan benchmarks Add benchmarks for: 1. non-blocking failing receive (polling of "stop" chan) 2. channel-based semaphore (gate pattern) 3. select-based producer/consumer (pass data through a channel, but also wait on "stop" and "timeout" channels)
runtime: add more chan benchmarks
Add benchmarks for:
1. non-blocking failing receive (polling of "stop" chan)
2. channel-based semaphore (gate pattern)
3. select-based producer/consumer (pass data through a channel, but also wait on "stop" and "timeout" channels)

LGTM=r
R=golang-codereviews, r
CC=bradfitz, golang-codereviews, iant, khr
https://codereview.appspot.com/59040043

d0f/go-zh,rdp/rogerpack2005-golang,sanjosh/sanjos100-tipc,bryanxu/go-zh,d0f/go-zh,rdp/rogerpack2005-golang,rdp/rogerpack2005-golang,webfd/go-zh,sanjosh/sanjos100-tipc,webfd/go-zh,d0f/go-zh,d0f/go-zh,sanjosh/sanjos100-tipc,d0f/go-zh,sanjosh/sanjos100-tipc,bryanxu/go-zh,webfd/go-zh,glycerine/jeaten-go-arrayof-structof,bryanxu/go-zh,webfd/go-zh,rdp/rogerpack2005-golang,bryanxu/go-zh,glycerine/jeaten-go-arrayof-structof,d0f/go-zh,rdp/rogerpack2005-golang,bryanxu/go-zh,bryanxu/go-zh,glycerine/jeaten-go-arrayof-structof,glycerine/jeaten-go-arrayof-structof,d0f/go-zh,bryanxu/go-zh,d0f/go-zh,rdp/rogerpack2005-golang,sanjosh/sanjos100-tipc,glycerine/jeaten-go-arrayof-structof,sanjosh/sanjos100-tipc,webfd/go-zh,glycerine/jeaten-go-arrayof-structof,bryanxu/go-zh,webfd/go-zh,glycerine/jeaten-go-arrayof-structof,rdp/rogerpack2005-golang,sanjosh/sanjos100-tipc,glycerine/jeaten-go-arrayof-structof,webfd/go-zh,webfd/go-zh,rdp/rogerpack2005-golang,sanjosh/sanjos100-tipc