当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript ice.Ice.Promise类代码示例

本文整理汇总了TypeScript中ice.Ice.Promise的典型用法代码示例。如果您正苦于以下问题:TypeScript Ice.Promise类的具体用法?TypeScript Ice.Promise怎么用?TypeScript Ice.Promise使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了Ice.Promise类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: runTestCase

 async runTestCase(adapter:Test.RemoteObjectAdapterPrx, proxy:Test.TestIntfPrx)
 {
     //
     // Put the adapter on hold. The server will not respond to
     // the graceful close. This allows to test whether or not
     // the close is graceful or forceful.
     //
     await adapter.hold();
     await Ice.Promise.delay(3000);
     test(this._heartbeat === 0);
     test(!this._closed); // Not closed yet because of graceful close.
     await adapter.activate();
     await Ice.Promise.delay(1000);
     await this.waitForClosed(); // Connection should be closed this time.
 }
开发者ID:zeroc-ice,项目名称:ice-debian-packaging,代码行数:15,代码来源:Client.ts

示例2: callbackOK

 callbackOK():PromiseLike<void>
 {
     return this._p.then(() =>
                         {
                             this._callback = false;
                             this._p = new Ice.Promise();
                         });
 }
开发者ID:zeroc-ice,项目名称:ice-debian-packaging,代码行数:8,代码来源:Client.ts

示例3: waitForClosed

 async waitForClosed()
 {
     const now = Date.now();
     while(!this._closed)
     {
         await Ice.Promise.delay(100);
         if(Date.now() - now >= 2000)
         {
             test(false); // Waited for more than 2s for close, something's wrong.
         }
     }
 }
开发者ID:zeroc-ice,项目名称:ice-debian-packaging,代码行数:12,代码来源:Client.ts

示例4: connect

 async function connect(prx:Test.TimeoutPrx)
 {
     let nRetry = 10;
     while(--nRetry > 0)
     {
         try
         {
             await prx.ice_getConnection();
             break;
         }
         catch(ex)
         {
             // Can sporadically occur with slow machines
             test(ex instanceof Ice.ConnectTimeoutException ||
                     ex instanceof Ice.ConnectFailedException, ex);
         }
         await Ice.Promise.delay(100);
     }
     return prx.ice_getConnection();
 }
开发者ID:zeroc-ice,项目名称:ice-debian-packaging,代码行数:20,代码来源:Client.ts

示例5: allTests


//.........这里部分代码省略.........
        }
        catch(ex)
        {
            test(ex instanceof Ice.MemoryLimitException, ex);
        }

        try
        {
            await thrower.throwMemoryLimitException(new Uint8Array(20 * 1024));
            test(false);
        }
        catch(ex)
        {
            test(ex.toString().indexOf("ConnectionLostException") > 0, ex);
        }
        out.writeLine("ok");

        let retries = 10;
        while(--retries > 0)
        {
            // The above test can cause a close connection between the echo server and
            // bidir server, we need to wait until the bidir server has reopen the
            // connection with the echo server.

            try
            {
                await thrower.ice_ping();
                break;
            }
            catch(ex)
            {
                if(ex instanceof Ice.ObjectNotExistException && retries > 0)
                {
                    await Ice.Promise.delay(20);
                }
                else
                {
                    throw ex;
                }
            }
        }

        out.write("catching object not exist exception... ");
        try
        {
            const thrower2 = Test.ThrowerPrx.uncheckedCast(
                thrower.ice_identity(Ice.stringToIdentity("does not exist")));
            await thrower2.ice_ping();
            test(false);
        }
        catch(ex)
        {
            test(ex instanceof Ice.ObjectNotExistException, ex);
            test(ex.id.equals(Ice.stringToIdentity("does not exist")));
        }
        out.writeLine("ok");

        out.write("catching facet not exist exception... ");
        try
        {
            const thrower2 = Test.ThrowerPrx.uncheckedCast(thrower, "no such facet");
            await thrower2.ice_ping();
            test(false);
        }
        catch(ex)
        {
开发者ID:zeroc-ice,项目名称:ice-debian-packaging,代码行数:67,代码来源:Client.ts


注:本文中的ice.Ice.Promise类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。