當前位置: 首頁>>代碼示例>>Python>>正文


Python Nanny.is_alive方法代碼示例

本文整理匯總了Python中distributed.Nanny.is_alive方法的典型用法代碼示例。如果您正苦於以下問題:Python Nanny.is_alive方法的具體用法?Python Nanny.is_alive怎麽用?Python Nanny.is_alive使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在distributed.Nanny的用法示例。


在下文中一共展示了Nanny.is_alive方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: test_nanny

# 需要導入模塊: from distributed import Nanny [as 別名]
# 或者: from distributed.Nanny import is_alive [as 別名]
def test_nanny(s):
    n = Nanny(s.ip, s.port, ncores=2, loop=s.loop)

    yield n._start(0)
    with rpc(n.address) as nn:
        assert n.is_alive()
        assert s.ncores[n.worker_address] == 2
        assert s.workers[n.worker_address].services['nanny'] > 1024

        yield nn.kill()
        assert not n.is_alive()
        assert n.worker_address not in s.ncores
        assert n.worker_address not in s.workers

        yield nn.kill()
        assert not n.is_alive()
        assert n.worker_address not in s.ncores
        assert n.worker_address not in s.workers

        yield nn.instantiate()
        assert n.is_alive()
        assert s.ncores[n.worker_address] == 2
        assert s.workers[n.worker_address].services['nanny'] > 1024

        yield nn.terminate()
        assert not n.is_alive()

    yield n._close()
開發者ID:tomMoral,項目名稱:distributed,代碼行數:30,代碼來源:test_nanny.py

示例2: test_many_kills

# 需要導入模塊: from distributed import Nanny [as 別名]
# 或者: from distributed.Nanny import is_alive [as 別名]
def test_many_kills(s):
    n = Nanny(s.address, ncores=2, loop=s.loop)
    yield n._start(0)
    assert n.is_alive()
    yield [n.kill() for i in range(5)]
    yield [n.kill() for i in range(5)]
    yield n._close()
開發者ID:tomMoral,項目名稱:distributed,代碼行數:9,代碼來源:test_nanny.py

示例3: test_nanny_process_failure

# 需要導入模塊: from distributed import Nanny [as 別名]
# 或者: from distributed.Nanny import is_alive [as 別名]
def test_nanny_process_failure(c, s):
    n = Nanny(s.ip, s.port, ncores=2, loop=s.loop)
    yield n._start()
    first_dir = n.worker_dir

    assert os.path.exists(first_dir)

    original_address = n.worker_address
    ww = rpc(n.worker_address)
    yield ww.update_data(data=valmap(dumps, {'x': 1, 'y': 2}))
    pid = n.pid
    assert pid is not None
    with ignoring(CommClosedError):
        yield c._run(os._exit, 0, workers=[n.worker_address])

    start = time()
    while n.pid == pid:  # wait while process dies and comes back
        yield gen.sleep(0.01)
        assert time() - start < 5

    start = time()
    while not n.is_alive():  # wait while process comes back
        yield gen.sleep(0.01)
        assert time() - start < 5

    # assert n.worker_address != original_address  # most likely

    start = time()
    while n.worker_address not in s.ncores or n.worker_dir is None:
        yield gen.sleep(0.01)
        assert time() - start < 5

    second_dir = n.worker_dir

    yield n._close()
    assert not os.path.exists(second_dir)
    assert not os.path.exists(first_dir)
    assert first_dir != n.worker_dir
    ww.close_rpc()
    s.stop()
開發者ID:tomMoral,項目名稱:distributed,代碼行數:42,代碼來源:test_nanny.py


注:本文中的distributed.Nanny.is_alive方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。