Thanks for your answer Alexis. I did not think it is not clear, else I was to
clear before.
So I will explain the scenario as following:
## At Cross walk app Javascript side happens the following scenario:
1. Async Function A is called
2. Async Function B is called
A & B are invoking calls to the same crosswalk extension.
## At extension Side:
Happens today: function A is calling PostMessage. When it returns,
Function B calls PostMessage.
Expected Behavior: PostMessage should be called in Parallel on two
different threads.
Javascript interpreters are supporting parallel execution and event driven
model. This is not working for extensions as I described.
If this is not clear I prefer to set a meeting with you so I show you the
problem.
Thanks,
Abed
-----Original Message-----
From: Alexis Menard [mailto:[email protected]]
Sent: Monday, February 29, 2016 23:30
To: Khet, Abed <[email protected]>
Cc: [email protected]; Boimel, Ohad
<[email protected]>
Subject: Re: [Crosswalk-help] Asynchronous message posting
Hi,
I don't understand the context. In one side you are talking about some JS
execution then you talk about C++ and threads. Hard to get the big picture. Can
you post a snipped of code/pseudo code of what you're trying to achieve.
But the behavior you describe is what setTimeout would normally do if say the
delay is the same. Calls are getting queued and then triggered.
Thanks.
On Thu, Feb 18, 2016 at 9:27 AM, Khet, Abed <[email protected]> wrote:
> Hi,
>
>
>
> I have the following line in my initialization function:
>
> g_messaging->Register(extension, handle_message);
>
>
>
> where g_messaging is from XW_MessagingInterface type.
>
>
>
> According to the documentation in the header file this function
> (handle_message) should be an called as an asynchronous messaging
> function and can be called in parallel form Javascript part. What
> happens is that even that calls in javascript that are fired using
> setTimeout JS function are being called serially one by one where the
> second one is called totally when the first one finishes its processing.
>
> I’ve tried solving this by using std::thread for each task depending
> on the fact the PostMessage function
> (XW_MessagingInterface_1::PostMessage) – but this caused a crash in the
> extension.
>
>
>
> How could I use asynchronous messaging in Crosswalk extension?
>
>
>
> Thanks,
>
> Abed
>
>
>
> ---------------------------------------------------------------------
> Intel Israel (74) Limited
>
> This e-mail and any attachments may contain confidential material for
> the sole use of the intended recipient(s). Any review or distribution
> by others is strictly prohibited. If you are not the intended
> recipient, please contact the sender and delete all copies.
>
>
> _______________________________________________
> Crosswalk-help mailing list
> [email protected]
> https://lists.crosswalk-project.org/mailman/listinfo/crosswalk-help
>
---------------------------------------------------------------------
Intel Israel (74) Limited
This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
_______________________________________________
Crosswalk-help mailing list
[email protected]
https://lists.crosswalk-project.org/mailman/listinfo/crosswalk-help