Пример #1
0
def test_free():
    h = Heap()

    addr1, block1, c1ptr = allocate_raw(h, 5)
    addr2, block2, c2ptr = allocate_raw(h, 5)

    assert len(h._arenas) == 1
    h.free(block2)

    addr3, block2, c2ptr = allocate_raw(h, 5)

    # Blocks get merged when free'd so that align blocks
    assert addr3 == addr2
Пример #2
0
def test_iopro():
    # this is kind of stupid right now because it does a copy,
    # but Tight IOPro integration will be a priority...

    h = Heap()

    s = StringIO(','.join(letters))

    data = iopro.genfromtxt(s, dtype='c', delimiter=",")

    addr, block = allocate_numpy(h, data.dtype, data.shape)
    block[:] = data[:]

    assert not block.flags['OWNDATA']
    assert block.ctypes.data == addr

    assert len(h._arenas) == 1
    assert block.nbytes < h._lengths[0]

    finalize(h)
Пример #3
0
def test_malloc():
    h = Heap()
    _, block, _ = allocate_raw(h, 1000)