Initializing help system before first use

XPRBexprContext Class

An XPRBexprContext allows you to easily dispose of intermediate expression objects created while constructing your model. Once an XPRBexprContext has been created, every expression created by that thread will be linked to the context and will be disposed when the XPRBexprContext is disposed.
Inheritance Hierarchy
SystemObject
   BCLXPRBexprContext

Namespace:   BCL
Assembly:  xprbdn (in xprbdn.dll) Version: 4.8.14.0
Syntax
C#
VB
public class XPRBexprContext : IDisposable

The XPRBexprContext type exposes the following members.

Constructors
  Name Description
Public method XPRBexprContext
Create a new expression context. Any expressions created on this thread from this point onwards will be added to this context, until the context is disposed. If the thread already has an expression context, new expressions will continue to be added to the old context & the new context will not be used.
Top
Methods
  Name Description
Public method Dispose
Free all expressions that are associated with this context.
Protected method Dispose(Boolean)
Releases the unmanaged resources used by the XPRBexprContext and optionally releases the managed resources
Public method Equals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Protected method Finalize (Overrides ObjectFinalize.)
Public method GetHashCode
Serves as a hash function for a particular type.
(Inherited from Object.)
Public method GetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected method MemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public method ToString
Returns a String that represents the current Object.
(Inherited from Object.)
Top
Remarks
XPRBexpr objects can be created explicitly or by operator overloading, and once created will normally be retained in memory until .NET decides to garbage collect them. As this can waste significant memory, the XPRBexprContext provides a way to easily dispose of your expressions once they are no longer required, without needing to keep a reference to every individual XPRBexpr.
Examples
XPRBprob p = new XPRBprob("Chess"); XPRBvar xs = p.newVar("xs"); XPRBvar xl = p.newVar("xl"); using (XPRBexprContext ctx=new XPRBexprContext()) { XPRBexpr woodRequired = xs + 3.0*xl; p.newCtr("wood", woodRequired<=200.0 ); XPRBexpr timeRequired = 3.0*cs + 2.0*xl; p.newCtr("mc_time", timeRequired<400.0); }
See Also

Reference