Michael, Thank you again for explaining LabVIEW Channels to us last night. Succintly from here, channels "allow one loop to communicate information to another loop running in parallel. It is like having a queue or a variable that one loop writes into and the other loop reads from, but instead of using a refnum or a named variable, the data transfer can be represented graphically as a wire".
They have a lot of potential indeed and I'm looking forward to using them. Tried this morning and they are still a bit buggy to be expected (they crashed LV twice), with the known issues list published by NI.
As you kept saying , you can use them in a way that messes with your head a bit as they break the dataflow paradigm, so you can do some funky things with them especially evident in the example you gave with cyclical communications around the outside of a while loop.
NI puts it another way here: