<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>Thanks Roberto,<br><br>So we will have to split our code into different apps then.<br>We cannot just do something like that  :<br><br>local function one()<br>       --do something long running (5s)<br>       return res<br><br>end<br><br><br>local function two()<br>       --do something fast<br>       return res<br>end<br><br>local c,d = one,two<br><br>-- here spawn means execute<br>local e = c.spawn<br>local f = d.spawn<br><br>-- here readState means read the result or wait for it until it is done.<br>e.readState()<br>f.readState()<br><br>That way we could run in parallel inside the same app.<br><br>Is this behavior possible ?<br><br>Thanks<br><br><div>> Date: Fri, 25 Apr 2014 07:32:29 +0200<br>> From: roberto@unbit.it<br>> To: uwsgi@lists.unbit.it<br>> Subject: Re: [uWSGI] Threads in lua ?<br>> <br>> <br>> > Hello,<br>> ><br>> > I am not sure to understand : Lua is not multithreaded but uses<br>> > coroutines.<br>> > I would not rely on libraries to provide the parallel tasking (lanes,<br>> > llthread and so on) because of internal policies.<br>> ><br>> > Yes, dumb but..<br>> ><br>> > Will uwsgi help us in this field for lua ?<br>> ><br>> > I thought about a rpc thing with sqlite to save the evolution but it is<br>> > not that interesting the end, because when the functions will not finish<br>> > at the same time you have to sleep for an arbitrary time and it is not a<br>> > reliable strategy (what if I sleep for one second and the process finished<br>> > 100 ms after the sleep ? 900 ms lost.)<br>> ><br>> > I would like to spawn functions and get the whole result in the end.<br>> ><br>> > Thanks<br>> ><br>> ><br>> >                                      _______________________________________________<br>> ><br>> <br>> uWSGI will generate a lua_state for every thread (if run in multithreaded<br>> mode). So yes, with uWSGI you can have multiple threads running the same<br>> lua app (without shared state)... and thanks to caches, queues  and locks<br>> (and rpc to some extent) uWSGI apis you can have shared states at various<br>> levels.<br>> <br>> <br>> -- <br>> Roberto De Ioris<br>> http://unbit.it<br>> _______________________________________________<br>> uWSGI mailing list<br>> uWSGI@lists.unbit.it<br>> http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi<br></div>                                          </div></body>
</html>