Next: Sample Applications Up: Sample Code and "How-to's" Previous: How to set throttle values
In general, it is better to set throttle limits and intervals based on 1-5 throttles per 10 secs-1 min.
See these examples:
filter -> setThrottle("text", 2, 10.0, "abcd"); // 1
filter -> setThrottle("text", 4, 20.0, "abcd"); // 2
filter -> setThrottle("text", 12, 60.0, "abcd"); // 3
What is the difference between these three throttles?
These three throttles would possibly have very different start and end behavior. Referring to the
timing example in the "How Throttling Works" section, while throttle 1
would mimic the throttling behavior in the example, throttle 2 would
still start at 0:15, since it has a longer floating interval for which to monitor the flow of messages, and
throttle 3 would not start at all. If
we see our last message at 0:18, we would not see a progress message for throttle
2 until 0:35. Since it had filtered messages during that fixed interval, throttle 2 would repeat another
cycle before ending itself, ending at 0:55.
It is important to note these differences when setting throttle limits and intervals. Here are some questions
to consider:
- What are the possible worst-case scenarios for message output? How many messages do I want to see in a
"problem" situation?
- How long do after a throttle starts would I want to see unfiltered messages again?
- Will my throttles conflict with each other and trigger undesired throttling behavior(please refer to section on
how to set throttle values)?
James Silva
2002-10-28