| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
| |
* new lane-global function set_error_reporting() to enable more data detailed data provided by lane_error()
|
| |
|
| |
|
|
|
|
| |
list
|
|
|
|
| |
luaL_openlibs()
|
|
|
|
| |
int size)
|
|\
| |
| | |
merge commits from steve
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
parameters
* added support for an on_state_create callback called to load custom functions in a state in addition to the base libraries
|
|\ \ |
|
| | |
| | |
| | |
| | | |
(but pthread builds must still do it to make sure the thread is no longger running)
|
| | |
| | |
| | |
| | | |
instead of the global scope.
|
|/ / |
|
| |
| |
| |
| |
| |
| |
| | |
whose fields path, cpath, loaders, preload are transfered
* code cleanup to facilitate transition between WIN32 and PTHREAD impleentations
* tentative fix for desinit crashes when free running lanes are killed at process shutdown
|
| | |
|
| | |
|
| | |
|
| | |
|
|\ \ |
|
| | |
| | |
| | |
| | | |
"lanes".configure()` idiom.
|
|/ /
| |
| |
| | |
* fix a multithreading issue at desinit causing invalid memory accesses (to be verified)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
when atexit() handlers are processed
* Lua 5.2-style module:
* module() is no longer used to implement lanes.lua
* a global "lanes" variable is no longer created when the module is required
* the Lanes module table is returned instead
* Lanes must be initialized before used:
* the first occurence of 'require "lanes"' produces a minimal interface that only contains a configure() function
* the remainder of the interface is made available once this function is called
* subsequent calls to configure() do nothing
* configure() controls the number of keeper states and the startup of timers
* LuaJIT 2 compatibility
* non-Lua functions are no longer copied by creating a C closure from a C pointer, but through 2-way lookup tables
* this means that if a lane function body pulls non-Lua functions, the lane generator description must contain the list of libraries and modules that exports them
* introduces a change in configuration .globals management: contents are copied *after* std libs are loaded
* new .required configuration entry to list modules that must be require()'ed before lane body is transferred
* lane:cancel() wakes up waiting lindas like what is done at lane shutdown
|
| | |
|
| | |
|
| |
| |
| |
| | |
silently doing nothing.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* new linda:count() method
* new linda batched data read mode
* proper key type check in all linda methods
* fix setup-vc.cmd to support Visual Studio 2010 and Windows 7 64 bits
* bugfix: release keeper state mutex at desinit
|
| | | |
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
* new linda:count() method
* new linda batched data read mode
* proper key type check in all linda methods
* fix setup-vc.cmd to support Visual Studio 2010 and Windows 7 64 bits
* bugfix: release keeper state mutex at desinit
|
|/
|
|
|
|
| |
* linda honors __tostring and __concat
* new accessor linda:keys(), to retrieve the list of keys with pending data inside a linda
* new lanes options packagepath and packagecpath, in case one needs to set them differently than the default
|
| |
|
| |
|
|
|
|
| |
exist)
|
|
|
|
| |
complains.
|
|
|
|
|
|
|
| |
a killed thread's VM.
* exposed cancel_test() in the lanes to enable manual testing for cancellation requests.
* removed kludgy {globals={threadName}} support, replaced with a new function set_debug_threadname().
|
|
|
|
| |
parameter passed to require.
|
|
|
|
|
|
| |
LuaJIT2-compatibility (but this is not enough).
* moved keeper-related code in a separate source file
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Refactor lane proxy implementation: it is now a full userdata instead
of a table, and its methods are implemented in C instead of Lua.
* its metatable is no longer accessible.
* writing to the proxy raises an error.
* it is no longer possible to overwrite its join() and cancel() methods
- when a deep userdata idfunc requests a module to be required, manually
check that it is not loaded before requiring it instead of relying on
the require function's loop detection feature.
- when a module must be required, raise an error if the 'require' function
is not found in the target state.
- we know Lanes is loaded in the master state, so we don't force it
to be required in every lane too when a linda deep userdata is copied.
|
|
|
|
| |
errors thrown by inter-state data copy for unsupported types
|
|
|
|
| |
errors thrown by inter-state data copy for unsupported types
|
|
|
|
| |
lua-callable and to be able to require the module it was exported from in the target lanes.
|
| |
|
|
|
|
|
| |
Fixed makefile so that make finds lua.exe
Updated contact information in documentation
|
|\ |
|
| |
| |
| |
| | |
directly to the globals table.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This fixes one of the causes of the "pthread_cond_destroy(ref) failed, 16 EBUSY" error,
in which the timer thread was stuck waiting on the write_happend signal and never read
the cancel request. This doesn't fix the issue of attempting to cancel threads waiting
on a Linda signal. So this error message ( and seg fault ) can easily be recreated just
by making a new thread, having it wait indefinitly on a Linda and then trying to cancel
the thread.
|