Hi. I believe we are working on a similar problem - If I understand your question. I have received a few helpful suggestions. The easiest (and ugliest) was to put an AND gateway and a signal intermediate event in front of each task. This way, the task is not reached until the signal event (new data) is added to the process/ksession. The other option, which I am working on now (a recommendation from salaboy I think), is implementing this functionality in a customworkitem - where the handler will not complete the work item until the required data is available. This way, one handler could be used to look for a message that was defined as a parameter in that workitem. This seems much cleaner to me.
hth (let me know if you have any thoughts)
-J