On 10/06/2011 16:04, Kostas Karasavvas wrote: > Hi all, Hello
> I have a question regarding the implementation of implicit iteration. > > Say we have: A -> B > A produces a list (say, with 5 elements) > B consumes a single element > > Will it iterate 5 times in sequence, i.e. call B, get results, call B, > get results, ... > Will it use threads, i.e. call B in thread1, call B in thread2, ... > Something else? Is it maybe configurable? The 5 calls of B do not have to happen in sequence. For example, if A is outputting its list as individual elements (rather than waiting for the whole list to be available and then outputting it), then A may produce element 3 before element 1. Because the call of B will happen for element 3 as soon as it is available, it will happen before the call corresponding to element 1. However, if you think of a list made up of the outputs of the 5 calls of B, then that list will still be in the right order i.e. the result of calling B for element 3 will be at position 3, that of element 1 at position 1. So, although the calls may have been made out-of-sequence, the overall result is in the correct sequence. Each service invocation happens in a separate thread, so yes Taverna uses threads for the calls of B. Whether several calls of B can be made at the same time, depends on the type of service that B is, and also on what has been specified for the number of parallel jobs for that service. There is only one beanshell interpreter for each beanshell service in the workflow, so although you can tell Taverna to run several parallel calls to that beanshell service, the calls will happen in sequence. For a WSDL service, Taverna can run calls in parallel. That can be dangerous though as it can have nasty effects on the machine where the remote service runs. To set the number of parallel jobs that Taverna will try to use for a service, you can r-click on the service, select "Configure running" and then "Parallel jobs". > Thanks, > Kostas Alan ------------------------------------------------------------------------------ EditLive Enterprise is the world's most technically advanced content authoring tool. Experience the power of Track Changes, Inline Image Editing and ensure content is compliant with Accessibility Checking. http://p.sf.net/sfu/ephox-dev2dev _______________________________________________ taverna-hackers mailing list [email protected] Web site: http://www.taverna.org.uk Mailing lists: http://www.taverna.org.uk/about/contact-us/ Developers Guide: http://www.taverna.org.uk/developers/
