I see the work-around from above, but why not just add the feature to only run the tasks at a defined interval regardless of how many times the job is triggered? Most remote monitoring systems have this feature, you could have it too :-)
Default it to 0. That is, let it run as often as it's triggered. But, have a an interval respected if it's set. For example, if you set the interval to 10 minutes, then regardless of how often the performance counter is triggered, only run the associated tasks every 10 minutes.