2011-12-13 33 views
0

後我使用Python的網絡服務器(CherryPy的),但我想這個問題是更加開放,是相當普遍的。目前,我有一些Ajax調用低谷JQuery load在一個按鈕點擊,這觸發了一些計算,結束於文件生成。通知瀏覽器/頁長期的任務已經結束

目前,儘快處理在後臺線程開始,我load返回鏈接到未來的服務器上的文件生成的頁面上。有幾個文件需要生成,整個過程可能需要幾分鐘。如何才能管理顯示文件的鏈接,只有當文件逐步可用時才能顯示文件? ......目前,這些鏈接已經死亡,直到存在文件,並且我無法告訴用戶鏈接何時生效。

更新:謝謝JB Nizet。現在有誰能提供關於Python線程安全數據結構編寫的建議嗎?不太瞭解這個主題,不知道從哪裏開始。

回答

1

輪詢服務器以獲取最新生成的文件(或生成的文件的完整列表)每隔N秒,並停止輪詢一旦列表完成,或者一旦第一AJAX查詢(這將啓動生成過程的一個)已經完成。

生成的文件應該在一個共享的,線程安全的,數據結構可以生成的文件列表中的線程。