| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Lua 5.2 introduced a hash randomizer seed which causes table iteration to yield a different key order
on different VMs even when the tables are populated the exact same way.
When Lua is built with compatibility options (such as LUA_COMPAT_ALL),
this causes several base libraries to register functions under multiple names.
This, with the randomizer, can cause the first name of a function to be different on different VMs,
which breaks function transfer.
This means that Lua 5.2 must be built with compatibility off to be able to use Lanes.
Even under Lua 5.1, this may cause trouble (even if this would be much less frequent)
Unfortunately, this fails with string.gfind/string.gmatch when Lua 5.1 is built with LUA_COMPAT_GFIND (which is the case of LuaBinaries),
so for the time being, fail only for Lua 5.2 as the randomizer is the real show breaker here.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* new method linda:dump() that outputs the full contents of a linda as a table, also linked to __towatch for Decoda support
* linda:receive() API change!
* instead of [val, key], linda:receive( timeout, key) returns [key, val]
* instead of [val, [...]], linda:receive( timeout, linda.batched key) returns [key, val[, ...]]
this is to unify the return values of regular and batched mode, and to be able to tell when batched mode is interrupted by a lane cancellation
* fixed Lua 5.2 build to take into account the "loaders"->"searchers" name change in 'package' module.
* a bit of html cleanup and added some infos in the documentation regarding the Lanes internals
|
| |
|
|
|
|
|
|
| |
* implemented set_debug_threadname() for pthread builds where possible
* refactored linda __tostring and __concat
* linda metatable's __metatable is a string instead of a boolean
|
|
|
|
| |
not active by default, see threading.h.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* lane.status can return "killed" if lane was forcefully killed with lanes:cancel()
* lane:join(): return nil, "killed" if called on a killed lane.
* lane[<n>]: produces [1] = nil, [2] = "killed" if the lane was killed
* lane:join(): fixed an assertion in debug builds when joining a lane forcefully cancelled with lane:cancel( <x>, true).
* indexing a lane with a string other than "join", "cancel" or "status" raises an error.
* fixed configure() to correctly apply defaults when they are missing from the provided settings
* added a shutdown_timeout to control the duration Lanes will wait for graceful termination of running lanes at application shutdown. Default is 0.25.
Among other things, fixes issue #31.
|
| |
|
| |
|
|
|
|
| |
* missing inclusion of <stdint.h>
* use __min instead of min
|
|
|
|
|
| |
* keeper internals implemented in C instead of Lua for better performances
* fixed arguments checks in linda:limit() and linda:set()
|
|
|
|
|
| |
* keeper internals implemented in C instead of Lua for better performances
* fixed arguments checks in linda:limit() and linda:set()
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
longer seems to be necessary
|
| |
|
| |
|
| |
|
|
|
|
| |
Perform keeper desinit in two stages, in case the keeper state being closed contains a reference to a linda bound to a previously desinitialized keeper, causing it to be destroyed after its keeper state.
(occurs only for applications using more than one keeper).
|
|
|
|
| |
linda objects to be collected after the keeper states are cleaned up.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
* lua51-lanes renamed lanes.core
* keeper state microcode is no longer embedded inside lanes.core, but located and loaded with package.loaders[2]
* changed rockspec build type from "make" to "builtin"
|
|
|
|
| |
(resolves issue #29)
|
|
|
|
|
|
| |
the user find out what's wrong
* new function lanes.nameof()
|
| |
|
| |
|
| |
|
|
|
|
| |
lane:cancel() has been called. (issue #28).
|
| |
|
|
|
|
|
|
| |
* lanes.timer() accepts a first_secs=nil to stop a timer
* timer lane catches errors and prints them
* fixed some typos in manual
|
|
|
|
| |
has to wake up in 0ms or when timer lane is cancelled.
|
| |
|
| |
|
| |
|