VirtualBox

vbox的更動 61953 路徑 trunk/src/VBox/ValidationKit


忽略:
時間撮記:
2016-6-30 上午10:38:53 (8 年 以前)
作者:
vboxsync
訊息:

testdriver: Added a doPollWork method to the reporter so the XML can be flushed while waiting for VMs to run and other things. Inserted a few called to the method in base.py, vbox.py and vboxwrapper.py.

位置:
trunk/src/VBox/ValidationKit/testdriver
檔案:
修改 4 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/VBox/ValidationKit/testdriver/base.py

    r61832 r61953  
    514514                    cMsWait = 1000;
    515515                try:
    516                     self.oCv.wait(cMsWait / 1000)
     516                    self.oCv.wait(cMsWait / 1000.0);
    517517                except:
    518518                    pass;
     519                reporter.doPollWork();
    519520                fState = self.pollTask(True);
    520521
  • trunk/src/VBox/ValidationKit/testdriver/reporter.py

    r61833 r61953  
    285285            self.testDone(False, sCaller);
    286286        return False;
     287
     288    #
     289    # Misc.
     290    #
     291
     292    def doPollWork(self):
     293        """
     294        Check if any pending stuff expired and needs doing.
     295        """
     296        return None;
     297
    287298
    288299
     
    925936        return None;
    926937
     938    def doPollWork(self):
     939        if len(self._asXml) > 0:
     940            g_oLock.acquire();
     941            self._xmlFlushIfNecessary();
     942            g_oLock.release();
     943        return None;
     944
    927945
    928946#
     
    13561374    return cErrors;
    13571375
     1376def doPollWork():
     1377    """
     1378    This can be called from wait loops and similar to make the reporter call
     1379    home with pending XML and such.
     1380    """
     1381    g_oReporter.doPollWork();
     1382    return None;
     1383
    13581384
    13591385#
  • trunk/src/VBox/ValidationKit/testdriver/vbox.py

    r61952 r61953  
    22892289                return -1
    22902290
     2291            reporter.doPollWork();
    22912292            try:    oProgress.waitForCompletion(cMsInterval);
    22922293            except: return -2;
  • trunk/src/VBox/ValidationKit/testdriver/vboxwrappers.py

    r61951 r61953  
    223223            except KeyboardInterrupt: raise;
    224224            except: pass;
     225            reporter.doPollWork();
    225226            fState = self.pollTask(False);
    226227        return fState;
     
    409410                reporter.errorXcpt(self.sName);
    410411                return -2;
     412            reporter.doPollWork();
    411413
    412414        try:
     
    481483                    reporter.errorXcpt(self.sName);
    482484                return -2;
     485            reporter.doPollWork();
    483486        # Not reached.
    484487
     
    668671            if cMsElapsed > cMsTimeout:
    669672                break;
    670             try:    self.oVBoxMgr.waitForEvents(cMsTimeout - cMsElapsed);
     673            try:    self.oVBoxMgr.waitForEvents(min(cMsTimeout - cMsElapsed, 10000));
    671674            except KeyboardInterrupt: raise;
    672675            except: pass;
     676            reporter.doPollWork();
    673677            fState = self.pollTask(False);
    674678        return fState;
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette