Device state concurrency

I remember readinmg something about a new feature. global device state concurrency
that would cause linearization of calls to a device handler (ie only allow on to execute at a time)

I cannot find the information about how to do this..
I was thinking of trying to rewrite a version of my send mail so i dont require the complicated semiphores and queing..

Any idea where i can find this documentation

thanks

@bravenel

@bcopeland

definition(
                ...
    	    	singleThreaded: true
)
2 Likes

Bummer on further review don't think this will work in my case, as the initial method terminates immediately after the "telnet connect command" as telnet is asynchronous with callbacks as responses are received.

Callbacks like parse() are handled by the hub core, they handle single threaded flag properly.

1 Like

yes but i would need to entire email exchange to be atomic.. from connect to the final close connection. otherwise even with the thread option multiple connections and parses can step on each other as the driver needs to know the sequence of steps from connectd, helo, from , to, data etc.

is there a way to assign an id to each connection and when parse gets called retrieve that id so i can maybe know parse is being called for which email in process?

I have a request maybe telnetConnect returns an and then a command on the parse method when it gets called to somehow retrieve that id..

Not sure it is possible but right now telenetconnect is a void.