On 2021-11-19 17:20, Ralph DiMola via use-livecode wrote:
I just wanted to thank Jacqueline Landman Gay and Charles Warwick for
this
thread
https://www.mail-archive.com/use-livecode@lists.runrev.com/msg113554.html
I still wonder how more than one synchronous operation can be in play
at the
same as synchronous operations are blocking. Oh well I works now with
tsNet-Pro. Well worth the price...
So technically 'synchronous' libURL operations are not blocking - they
use a nested wait. As libURL is a script library, and uses engine
sockets (and thus messages), they need to get messages and so all
messages also occur. Indeed, this also means you can handle progress
notifications, and whatever means you choose to show the UI is currently
'blocked' because your script is busy.
It does mean you do have to be somewhat careful with `get url` and
friends - since you can end up in a bit of a recursive mess (i.e. if a
message fires while a get url is going on, and you do another get url
etc. etc.).
There is a request in BZ to make tsNet's synchronous calls truly
blocking - however that would probably need to come with some sort of
automatic 'busy' indicator over all currently open windows to prevent UI
events getting queued / lost (and users being confused why things don't
work at certain points!). The upside of that is that it might prevent
'mysterious' problems with accidental recursive waits which can happen
at the moment.
Warmest Regards,
Mark.
--
Mark Waddingham ~ m...@livecode.com ~ http://www.livecode.com/
LiveCode: Everyone can create apps
_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode