In our home page we have multiple web parts that get the data from different webservices or from a recursive search in some lists in the site collection.
We detected that all this calls were too slow, so we decided to load the data once the page is enabled. To do this, we added a update panel in each web part and a timer like this:
<asp:UpdatePanel runat="server" id="UpdatePanel1">
<ContentTemplate>
<asp:Timer runat="server" id="Timer1" Interval="1" OnTick="Load_Data"></asp:Timer>
</ContentTemplate>
</asp:UpdatePanel>
In Load_Data function Timer1 is removed, the data is load and it is rendered inside the updatepanel.
This works perfectly, except that all webparts are load sequentially. That means that the second webpart is not loaded until the first is loaded and the same for all others. I want to load all web parts at a time and when one is ready, render this one.
How can I accomplish this?