亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 3381 | 回復: 4
打印 上一主題 下一主題

線程鎖加異常捕獲的問題 [復制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2010-05-29 17:14 |只看該作者 |倒序瀏覽
def openurl(self,url,data=None):
        if data:self.curl.setopt(pycurl.POSTFIELDS,data)
        self.curl.setopt(pycurl.URL,url)
        self.rep.seek(0)
        self.rep.truncate()
        mylock.acquire()
        try:
            self.curl.perform()
        except Exception,error:
            if self.errorCode.has_key(error[0]):
                print ">",self.errorCode[error[0]]
                if error[0]==7:   #1
                    time.sleep(15)
            else:
                print ">",error
        finally:
            mylock.release()
        s=self.rep.getvalue()
        return str(s)

上邊是一個線程類中了讀取網(wǎng)頁的類方法

我想添加一個循環(huán),如果遇到指定的錯誤等待數(shù)秒后重新從循環(huán)執(zhí)行一次

直到讀取成功跳出循環(huán)再解除線程鎖

循環(huán)應該放在哪一行
finally該放在哪一行

論壇徽章:
0
2 [報告]
發(fā)表于 2010-05-29 21:15 |只看該作者
本帖最后由 luffy.deng 于 2010-05-29 22:17 編輯

這樣搞發(fā)生異常時跟單線程有什么區(qū)別?

論壇徽章:
0
3 [報告]
發(fā)表于 2010-05-30 00:33 |只看該作者
每個線程處理各自的任務(wù),同時只能有一個線程能讀取網(wǎng)頁
但是可能會出現(xiàn)一些意外,像網(wǎng)絡(luò)斷開
如果出現(xiàn)這種意外情況就鎖住所有線程,當前讀取網(wǎng)頁的線程進入等待直到網(wǎng)絡(luò)恢復正常才釋放鎖

論壇徽章:
0
4 [報告]
發(fā)表于 2010-05-30 07:04 |只看該作者
那你用多進程,而不是線程,這樣實現(xiàn)線程的方式,肯定會出問題的。

論壇徽章:
0
5 [報告]
發(fā)表于 2010-05-30 10:44 |只看該作者
本帖最后由 luffy.deng 于 2010-05-30 20:43 編輯
每個線程處理各自的任務(wù),同時只能有一個線程能讀取網(wǎng)頁
但是可能會出現(xiàn)一些意外,像網(wǎng)絡(luò)斷開
如果出現(xiàn)這種 ...
9ibook 發(fā)表于 2010-05-30 00:33

我還是看不出來有什么理由  獲得鎖以后sleep(15)  。 如果你確實就是想設(shè)計成這樣,那循環(huán)就很簡單了。
  1.     n=2
  2.     mylock.acquire()  
  3.     while n:   
  4.         try:
  5.             self.curl.perform()
  6.             break
  7.         except Exception,e:
  8.             n-=1
  9.             time.sleep(5)            
  10.     mylock.release()
復制代碼
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP