[This is preliminary documentation and is subject to change.]
The IPile type exposes the following members.Methods
Name | Description | |
---|---|---|
![]() | Compact |
Tries to delete extra capacity which is allocated but not currently needed.
Returns the number of bytes freed back to the system
|
![]() | Delete |
Deletes object from pile by its pointer returning true if there is no access violation
and pointer is pointing to the valid object, throws otherwise unless
throwInvalid is set to false
|
![]() | ![]() | Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. (Inherited from ![]() |
![]() | Get |
Returns a CLR object by its pointer or throws access violation if pointer is invalid
|
![]() | GetRawBuffer |
Returns a raw byte[] occupied by the object payload, only payload is returned along with serializer flag
which tells what kind of serializer was used.
This method is rarely used, it is needed for debugging and special-case "direct" memory access on read
to bypass the de-serialization process altogether
|
![]() | Purge |
Deletes all objects freeing all segment memory buffers.
This method may require the caller to have special rights
|
![]() | Put |
Puts a CLR object into the pile and returns a newly-allocated pointer.
Throws out-of-space if there is not enough space in the pile and limits are set.
Optional lifeSpanSec will auto-delete object after the interval elapses if
the pile SupportsObjectExpiration and SweepExpireObjects is set to true
|
![]() | Rejuvenate |
If pile supports expiration, resets object age to zero.
Returns true if object was found and reset. N/A for pile that do not support expiration
|
![]() | SizeOf |
Returns the size of pointed-to object in bytes or throws access violation if pointer is invalid.
The serialized object size is returned, not the CLR object size.
|
Properties
Name | Description | |
---|---|---|
![]() | AllocatedMemoryBytes |
Returns the number of bytes allocated by this pile from system memory
(Inherited from IPileStatus.) |
![]() | ComponentCommonName |
Returns the common name used to identify the component, for example "Glue" for various IGlue implementations.
This name is searched-by some management tools that allow to find component by this name that does not change between
application restarts like ComponentSID does. Subordinate (non-root) components return null
(Inherited from IApplicationComponent.) |
![]() | ComponentDirector |
Returns a reference to an object that this app component services/operates under, or null
(Inherited from IApplicationComponent.) |
![]() | ComponentSID |
Returns process/instance unique app component system id
(Inherited from IApplicationComponent.) |
![]() | Locality |
Returns whether pile is local or distributed
(Inherited from IPileStatus.) |
![]() | MemoryCapacityBytes |
Returns an approximate capacity of free memory that the system has left
(Inherited from IPileStatus.) |
![]() | NodeCount |
Returns the number of nodes(servers) that service this distributed pile.
If this pile locality is local then returns 1
(Inherited from IPileStatus.) |
![]() | ObjectCount |
Returns the number of allocated objects in this pile
(Inherited from IPileStatus.) |
![]() | OverheadBytes |
Returns the number of extra bytes used by pile metadata currently occupied by object stored in this pile
(Inherited from IPileStatus.) |
![]() | Persistence |
Returns the model of object persistence that this pile supports
(Inherited from IPileStatus.) |
![]() | SegmentCount |
Returns the number of segments allocated
(Inherited from IPileStatus.) |
![]() | SupportsObjectExpiration |
Returns whether this instance supports object expiration
(Inherited from IPileStatus.) |
![]() | UtilizedBytes |
Returns the number of bytes allocated for object storage within AllocatedMemoryBytes
(Inherited from IPileStatus.) |
See Also