Synchronisation help
Christian Köstlin
christian.koestlin at gmail.com
Tue Jan 2 11:49:39 UTC 2024
On Tuesday, 2 January 2024 at 10:41:55 UTC, Anonymouse wrote:
> On Monday, 1 January 2024 at 19:49:28 UTC, Jonathan M Davis
> wrote:
>> [...]
>
> Thank you. Yes, `Foo` is a class for the purposes of
> inheritance -- I left that out of the example.
>
> So a completely valid solution is to write a struct wrapper
> around an AA of the type I need, overload the required
> operators, and then just drop-in replace the current AA? All
> array operations would then transparently be between lock and
> unlock statements.
>
> [...]
>
> I guess this can break synchronisation between the two if I
> replace the `Mutex` in either thread. Are there any other
> obvious caveats?
It might be, that this locking scheme is too narrow. E.g. you
might want to have an "atomic" testAndSet on the AA e.g. check if
an element is in and iff its not in put it there.
Kind regards,
Christian
More information about the Digitalmars-d-learn
mailing list