Advanced Customization > Info*Engine User’s Guide > Info*Engine Custom Tag Reference > Info*Engine Tags > Core Library Tags > parallel
  
parallel
The parallel tag allows you to define a set of webjects or tasks that are executed concurrently.
Each webject and each task that is nested in a parallel tag block is executed in its own environment at the same time as the other webjects and tasks in the block. After all of the webjects and tasks successfully complete, then the VDBs of the individual processes are merged with the VDB in use by the page or task. Processing continues starting with the line after the parallel end tag.
If an exception occurs within the parallel block, by default the exception is propagated outside the parallel block after the parent VDB has been updated. If a webject or task within a parallel tag block fails, you should assume that the content of the resulting VDB is unpredictable.
You can nest this tag in unit, init, success, or failure tag bocks. You can also nest multiple webject and task tags in this tag block.
* 
Display webjects cannot be nested in a parallel tag bock.
Syntax
<ie:parallel>
.
. (webject or task tag blocks)
.
</ie:parallel>
Example
The following example declares that the page uses tags from the Info*Engine core tag library and that the tags have the ie prefix. The following parallel tag block executes two Query-Object webjects and a task at the same time:
<%@ taglib uri="http://www.ptc.com/infoengine/taglib/core"
prefix="ie" %>

<ie:parallel>

<ie:webject name="Query-Objects" type="OBJ">
<ie:param name="INSTANCE" data="jndiAdapter"/>
<ie:param name="FILTER" data="(objectClass=*)"/>
<ie:param name="GROUP_OUT" data="dirOut"/>
</ie:webject>

<ie:webject name="Query-Objects" type="OBJ">
<ie:param name="INSTANCE" data="jdbcAdapter"/>
<ie:param name="CLASS" data="EMP"/>
<ie:param name="WHERE" data="()"/>
<ie:param name="GROUP_OUT" data="dbOut"/>
</ie:webject>

<ie:task URI="stask.xml">
<ie:param name="P1" data="v1"/>
<ie:param name="P2" data="v2"/>
<ie:param name="GROUP_OUT" data="people"/>
<ie:param name="GROUP_OUT" data="employees"/>
</ie:task>

</ie:parallel>
If this parallel tag block is part of a JSP page, all four of the groups created in the block are available to any display webjects that follow the block. If the block is in a task, you would use the Return-Groups webject after the block to make the groups available to display webjects.