Unless you are using them for a static look-up table, you really should not be using globals. Due to the inherent parallel nature of LabVIEW code, race conditions are trivial to create when using them. Debugging race conditions is an exercise in frustration requiring some fairly advanced techniques.
There are several ways to eliminate globals. First, try just using wires and passing data into and out of your subVIs. If you really need a reference object, for something like a close flag used by multiple, parallel loops, you can make a "safe" one (implements a mutex-like locking) in a couple of ways. You can find a tutorial on this subject on this thread -
Reference Objects in LabVIEW - LabVIEW 8.5 Update. There is code there for LabVIEW 7.1 and 8.2.
Let us know if you have further questions.