Control behavior tree scheduling

I was wondering what is the best way to control behavior tree scheduling. Behavior trees are being run very frequently (every frame?), and there may be cases where this is not desirable. For example when having lots of AI entities on the map. The way I found to slow down evaluation of the tree is to put a sequence below the root node with a Wait node followed by the rest of the tree. If I set the Wait node to 0.1s, my tree will be evaluated 10 times per seconds which is fine. Questions:

1.Is using a Wait node the right way to do it?

2.Can I, from C++, dynamically change the Wait time of a Wait node. If AIs are far away from the player, I would like to slow down their behavior tree polling.

Connected to https://answers.unrealengine.com/questions/597863/any-way-to-adjust-the-behaviour-tree-update-rate.html