Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhance LWM2M tree synchronizaton mechanism at client side #967

Open
sbernard31 opened this issue Jan 29, 2021 · 3 comments
Open

Enhance LWM2M tree synchronizaton mechanism at client side #967

sbernard31 opened this issue Jan 29, 2021 · 3 comments
Labels
client Impact LWM2M client new feature New feature from LWM2M specification

Comments

@sbernard31
Copy link
Contributor

sbernard31 commented Jan 29, 2021

Currently thread synchronization at client side was done thanks to synchronized block at LWM2M Object level (BaseObjectEnabler)

With the addition of WriteComposite(#959) and the need to apply operation at LWM2M Root Level in an atomic way and so this is probably no more enough.

We should maybe introduce a new locking interface which allow to implement different lock strategy.
This interface should provide a way get lock for a given LWM2M Node :

public inteface LwM2mLock {
    Lock readLock(LwM2mPath path)
    Lock writeLock(LwM2mPath path)
}

We can imagine several implementation like :

I'm not so sure, just an idea.

Some more resources :

@sbernard31 sbernard31 added client Impact LWM2M client new feature New feature from LWM2M specification labels Jan 29, 2021
@sbernard31 sbernard31 changed the title Enhance LWM2M tree synchronizaton mecanism at client side Enhance LWM2M tree synchronizaton mechanism at client side Jan 29, 2021
@sbernard31
Copy link
Contributor Author

@moznion, do you already feel you need something like this ?

@moznion
Copy link
Contributor

moznion commented Feb 4, 2021

Hmm, it looks interesting. To be honest, I've not felt like that gimmick needed for me until now, but I think introducing the lock mechanism is a good idea.

@sbernard31
Copy link
Contributor Author

Does it means that a global lock at tree level will be enough for you ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
client Impact LWM2M client new feature New feature from LWM2M specification
Projects
None yet
Development

No branches or pull requests

2 participants