I don't think checking whether the string is "stop" will hurt your psuedo-RTism any more than the non-RT OS jitter, the network unperdictability, or maybe even the use of a local variable. You can just put a case around the VISA write and only write to it if the string isn't "stop".
I don't think there's any reason to use the timeout, unless your dequeue can't do its job fast enough, but I also don't think it really matters. As long as your queue is big enough and is being dequeued fast enough, you shouldn't have a problem.
___________________
Try to take over the world!