<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Hi,<br>
<br>
<br>
On 10/17/2012 03:11 AM, Li, Chenglin wrote:
<blockquote
cite="mid:000901cdac0c$c6263470$52729d50$@li@quanshi.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="Generator" content="Microsoft Word 12 (filtered
medium)">
<style>
<!--
/* Font Definitions */
@font-face
        {font-family:宋体;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"\@宋体";
        panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        text-align:justify;
        text-justify:inter-ideograph;
        font-size:10.5pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
        {mso-style-priority:99;
        mso-style-link:"纯文本 Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:10.5pt;
        font-family:"Calibri","sans-serif";}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
span.Char
        {mso-style-name:"纯文本 Char";
        mso-style-priority:99;
        mso-style-link:纯文本;
        font-family:"Calibri","sans-serif";}
.MsoChpDefault
        {mso-style-type:export-only;}
/* Page Definitions */
@page Section1
        {size:612.0pt 792.0pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.Section1
        {page:Section1;}
-->
</style><!--
[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif][if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<div class="Section1">
<p class="MsoNormal"><span lang="EN-US">Hi All<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoPlainText"><span lang="EN-US">we want to use
RabbitMQ javascript
library to IPhone, and we use UIWebView to execute
javascript:
stringByEvaluatingJavaScriptFromString, but there are some
restrictions for
execution JS on IOS as below:<o:p></o:p></span></p>
<p class="MsoPlainText"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoPlainText"><span lang="EN-US">/****************************************************************************/<o:p></o:p></span></p>
<p class="MsoPlainText"><span lang="EN-US">JavaScript execution
time is limited to
10 seconds for each top-level entry point. If your script
executes for more
than 10 seconds, the web view stops executing the script.
This is likely to
occur at a random place in your code, so unintended
consequences may result.
This limit is imposed because JavaScript execution may cause
the main thread to
block, so when scripts are running, the user is not able to
interact with the
webpage.<o:p></o:p></span></p>
<p class="MsoPlainText"><span lang="EN-US">/***************************************************************************/<o:p></o:p></span></p>
<p class="MsoPlainText"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoPlainText"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoPlainText"><span lang="EN-US">I want to confirm
with you :<o:p></o:p></span></p>
<p class="MsoPlainText"><span lang="EN-US">1. Does the rabbitmq
javascript library
have above issues? rabbitmq javascript execution time will
be over 10 seconds?</span></p>
</div>
</blockquote>
<br>
There are a number of javascript libraries around, and some of them
(probably?) offer non-blocking options. You might start by looking
at
<a class="moz-txt-link-freetext" href="http://www.rabbitmq.com/blog/2012/05/14/introducing-rabbitmq-web-stomp/">http://www.rabbitmq.com/blog/2012/05/14/introducing-rabbitmq-web-stomp/</a>.
But you should bare in mind that it is impossible to guarantee 'how
long' something will take when the network is involved. The
workaround is usually to spawn a worker thread or some such, though
I have idea what kind of approaches will be available on iOS.<br>
<br>
</body>
</html>