ItemProcessingEventData Class
Event data common for begin/progress/end processing events.
This is a stateful class where it is intended that every node has a single instance of a subclass implementing
GraphMessageTotalSize in a suitable way.
Implementation note: This data cannot be part of
GraphMessage because a single message can be queued at
and processed by multiple nodes.
Namespace: Quine.GraphAssembly: Quine.Graph (in Quine.Graph.dll) Version: 1.0.0+0ea0706914ee4edf2b0ed66bec3ab4d062a43b68
public class ItemProcessingEventData
- Inheritance
- Object ItemProcessingEventData
| IncrementProcessedSize |
Increments absolute processed size by s, ensuring monotonicity of Progress.
The operation is atomic, i.e., may be called by multiple threads without additional synchronization.
This method can be called only when GraphMessageTotalSize is positive.
|
| SetItemProgress |
Sets Progress to progress. This method can be always called.
This method also triggers event publishing. Additional instance data in derived classes must be set before invoking this method.
|
| SetProcessedSize |
Sets absolute processed size to s, ensuring monotonicity of Progress.
This method can be called only when GraphMessageTotalSize is positive.
|
| SetShouldPublish |
Should be invoked by the derived class when additional data is ready for publishing.
|
| SetState | |
| ProgressReportingPeriod |
To avoid message flooding, progress events are sent not more frequently than this period (unless forced).
|