Don't quote me on this, but I believe that marshal uses a string in bytecode with threads, uses straight malloc with bytecode and no threads, and never uses strings in native code.  I'm /very/ unsure about that last one, but I am pretty confident that in some cases, whether it uses strings depends on whether threads are involved.

y

On 1/17/07, Sebastien Ferre <ferre@irisa.fr> wrote:

Daniel Bünzli wrote:

>> pourtant, je passe bien par un appel a output_value
>> dans un fichier, sans passer par une chaine intermediaire.
>
> Maybe output_value uses a string internally. Try with a bytecode
> version of your executable, an exception should be raised (or have a
> look at the implementaiton of output_value).

I used a bytecode version.

I checked the code of output_value, and it uses an internal
string. So it won't work.

Anyway, I knew I would have to go for a more serious
solution as soon as data get really large. I think of
using something like GDBM.

Thanks for the help.
Sebastien

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs