Assuming polling is what people are used to in Processing:
I’d rather avoid the sleep. How about registering for SyphonServerDirectory’s notifications, and have a ServerListHasChanged() method? Users can poll that and it will return true if you’ve received a notification since they last queried it or called listServers. At that point they can call listServers().