The golang runtime allows you to specify how many processes it will use. It schedules goroutines one after the other inside that number of processes. If you specify max 1 process, you have no parallelism, just concurrency.
Does it have a priority system? Or a way to setup pools? I often find I want to run some part of a program (some of its tasks) on a set number of threads at a certain priority, not throw tasks into some global pool.