Writing c interface as shared library, i call k(0, “myFunction”, arg, 0);
The resulting value has type 81h (mapped list of bytes), and I don’t know how do I subsequently use kK() and related functions on it (it returns bad pointer (small integer), which is, i suppose, some offset from some origin).
Any official docs/advises?
Regards,
San.
you should gain access to those elements via manufacturing them in the heap through indexing in q, e.g.
to have all elements manufactured at once:
k(0,“(::')myFunction@”,arg,0);
But…
but this is effectively extra (alloc + memcpy)*N, exactly what mmapped lists are not.
I suppose kdb internally handles it properly (accessing without “manufacturing”), and this puts C interface at disadvantage. Correct? Any plans to enhance k.h ?