Re: Generic Attribute API race condition
From: Claudio Takahasi <hidden>
Date: 2011-06-30 18:48:43
Hi Inga, On Wed, Jun 29, 2011 at 8:50 PM, [off-list ref] wrote:
Hi Claudio,
<snip>
Just noticed this thread. I ran into a similar problem. Cannot we just delay the return of DiscoverCharacteristics method call until after the characteristic values/properties have been acquired? I tried out this solution and it seems to work fine. The trick is to implement internal counter for received responses from the remote device + timeout that is reset on each successful response. Any thoughts on this?
IMO delay the return of DiscoverCharacteristics method is the most simple solution. I am changing the Generic Attribute to handle on demand connections: request connection when there is at least one watcher registered or a write operation pending(SetProperty). After that we will investigate how to fix the discovery race condition.
Also, "Property Changed" on characteristic obj path/interface signal is mentioned in the attribute API doc, but I cannot seem to find implementation for the signal in the code. Am I missing something?
It is not implemented. Regards, Claudio. <snip>