PIModules, PIBatch's, and other PIModule and PIBatch database objects are not cached in the SDK. If you get two copies of the same object in your program and edit them separately, the last writer's changes will overwrite any changes made previously.
NOTE: Many PIModule and PIBatch objects have subordinate objects within them. For example: PIProperty objects. Changes to these subordinate objects cause the parent object to be written to the database.
Here is a list of subordinate objects:
PIModule objects are NOT subordinate objects of their parent PIModule.