protected Object m_DrawingExclusiveLockProtected m_DrawingExclusiveLock As ObjectIf you are implementing any public methods, properties or events which can affect the way ChartBase is drawn, make sure to lock on this object. That way, if your properties, events or methods are called from a different thread while ChartBase is being drawn, the calling thread will have to wait until the drawing is complete, thus making ChartBase thread safe.
If you are implementing your own drawing algorithm, make sure to lock on this object too.