Developer Release Notes: BeOS Release 4, The Support Kit
Developer Release Notes
BeOS Release 4
Archiving (Archivable.h)
- New version of
instantiate_object() takes an
extra image_id output argument.
The argument returns the image
id from which the object was unarchived.
- New version of find_instantiation_func() takes a class name and a MIME signature. The function looks for className::Instantiate() in the library with the given signature.
BBufferIO
New BBufferIO class inherits from BPositionIO. A BBufferIO acts as a data buffering mechanism for a BPositionIO object (a BFile, typically), thus turning stream data into buffered data.
To use a BBufferIO, you "attach" a BPositionIO object to it in the constructor, and then invoke the Read[At]() and Write[At]() functions on the BBufferIO object. You can set the size of the underlying buffer in the constructor; the default is 64k.
Class Info
The functions in support/ClassInfo.h have been deprecated. Use the C++ RTTI functions instead.
BLocker
- New versions of the
BLocker constructor let
you declare whether you want the underlying semaphore to be a
normal semaphore or a "benaphore."
Although benaphores are more
efficient than normal semaphores, they can complicate the code.
When you're tracking down a bug (particularly a deadlock bug),
it's easier to see what's going on if you switch to normal
semaphores.
Just remember to switch them back before you ship.
See
Benaphores in the Be Newsletter archives for more about benaphores.
By default, a BLocker uses a benaphore for its lock.
The new BString class is convenient, lightweight string allocation and manipulation wrapper.
Miscellaneous
Defined in support/SupportDefs.h
- New get_stack_frame() returns the address of the current stack frame (i.e. the frame from which the function is called).
Copyright © 1998 Be, Inc. All rights reserved.