Is there some algorithm for R/W lock graphs?

Viewed 87

Suppose we have resources A,B,C and their dependencies not cyclic:

B->A
C->A

Means B strongly depends on A and C strongly depends on A. For example: B,C is precomputed resources from A. So if A updates, B,C should be updated too. But if B updated - nothing changes except B.

And for the problem: Considering the fact that each node of graph can be accessed for Read or Write or Read/Upgrade to Write in multi-threaded manner, how one supposed to manage locks in such graph? Is there generalization of this problem?

Update

Sorry for not clear question. Here is also one very important thing: If for example A changes and will force B,C to be updated it means that the moment B and their dependencies updates - it will free write lock.

2 Answers
Related