我有一個問題,我真的很感激一點幫助。parralel ASP.NET定時器控件
在我的.aspx上,我有四個ASP.NET計時器控件,當它們中的每一個都打開時,我會調用不同的Web服務方法,以返回一些照片。我在更新面板中有一張圖片,並在獲取照片時將其更新爲src。我正在使用jQuery lightBox插件來預覽圖像。
問題是:我想定時器在同一時間(同時)工作。因此,在頁面加載,幾秒鐘後應該會出現每個定時器的滴答聲(並行,在同一時間更少)。兩個定時器都有相同的時間間隔,所以它應該可以工作,但實際上我注意到第二個定時器僅在第一個Web服務回調出現後纔會打勾,第三個定時器在第二個Web服務回調出現後打勾。所有這些都是線性的,而不是平行的。
任何解決方案如何將其同時修改爲Tick?
我的.aspx:
<center>
<asp:Timer runat="server" ID="UpdateTimer1" OnTick="UpdateTimer1_Tick" />
<asp:UpdatePanel runat="server" ID="TimedPanel2" UpdateMode="Conditional">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="UpdateTimer1" EventName="Tick" />
</Triggers>
<ContentTemplate>
<asp:Literal runat="server" ID="Ltr1" />
<div id="div1" runat="server">
<img alt="" id="img1" runat="server" style="width: 85%; height: 85%" />
</div>
</ContentTemplate>
</asp:UpdatePanel>
</center>
我在.aspx.cs一個定時器,定時器的其餘部分類似於 - 調用Web服務不同,但具有相同的事件,updateTimer_Ticks等:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
UpdateTimer1.Interval = 3000;
{
}
protected void UpdateTimer1_Tick(object sender, EventArgs e)
{
AsynchGetPhoto();
}
public void AsynchGetPhoto()
{
WS.Service Service = new WS.Service();
Service.getPhotoCompleted += new Service.getPhotoCompletedEventHandler(PhotoCompleted);
Service.getPhotoAsync();
}
public void PhotoCompleted(object sender, WS.Service.getPhotoCompletedEventArgs args)
{
img1.Attributes.Add("src", "data:image/jpg;base64," + args.Result);
}