# object.queue file

D3 shares FlashBASIC object code between all processes
running a given program. While this vastly decreases memory requirements,
it also opens the possibility of one user compiling a program while
another user is concurrently running that same routine. This circumstance
tends to produce random, unexplainable aborts that can be difficult
to track on large systems.

When protection is enabled, all previous revisions of
FlashBASIC object code are kept in the same dictionary group, but
are marked as deleted. These deleted items are automatically cleared
during the save process. This allows compiling
programs while they are currently being executed. Users running a
given program when that program is compiled continues to run the old
version. If a user drops out of the program, to TCL, for example,
and re-executes the program, the system executes the newest object
version.

Old BASIC object code is moved to the dm,object.queue, file where it is eventually deleted. By default, object code remains
in this file until 1000 (default) subsequent compiles (of any program)
are performed. To increase this number, use basic-prot ##, where ## is the new queue size. To make the
number infinite (or virtually infinite), use 0. When this number of
compiles is performed, a message is logged to the errors file.

---
Source: https://d3codex.com/systemfiles/object-queue-file/ - part of the D3Codex reference.
