diff options
author | Benoit Germain <b n t DOT g e r m a i n AT g m a i l DOT c o m> | 2018-11-25 12:45:11 +0100 |
---|---|---|
committer | Benoit Germain <b n t DOT g e r m a i n AT g m a i l DOT c o m> | 2018-11-25 12:45:11 +0100 |
commit | 8d6500fe389624be422ee546f71a1efd4456eabe (patch) | |
tree | b9462a142180b8edb01e1eb284a42fea9f0156bc /src/lanes.lua | |
parent | 60e5d94af372471c2a3bab91963588ca650bff7b (diff) | |
download | lanes-8d6500fe389624be422ee546f71a1efd4456eabe.tar.gz lanes-8d6500fe389624be422ee546f71a1efd4456eabe.tar.bz2 lanes-8d6500fe389624be422ee546f71a1efd4456eabe.zip |
protect_allocator configure option is gone, long live allocator (more embedders-friendly)
Diffstat (limited to 'src/lanes.lua')
-rw-r--r-- | src/lanes.lua | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/lanes.lua b/src/lanes.lua index 6779095..15908fa 100644 --- a/src/lanes.lua +++ b/src/lanes.lua | |||
@@ -76,8 +76,7 @@ lanes.configure = function( settings_) | |||
76 | track_lanes = false, | 76 | track_lanes = false, |
77 | demote_full_userdata = nil, | 77 | demote_full_userdata = nil, |
78 | verbose_errors = false, | 78 | verbose_errors = false, |
79 | -- LuaJIT provides a thread-unsafe allocator by default, so we need to protect it when used in parallel lanes | 79 | allocator = nil |
80 | protect_allocator = (package.loaded.jit and jit.version and package.loaded.ffi and (package.loaded.ffi.abi( "32bit") or package.loaded.ffi.abi( "gc64"))) and true or false | ||
81 | } | 80 | } |
82 | local boolean_param_checker = function( val_) | 81 | local boolean_param_checker = function( val_) |
83 | -- non-'boolean-false' should be 'boolean-true' or nil | 82 | -- non-'boolean-false' should be 'boolean-true' or nil |
@@ -90,7 +89,10 @@ lanes.configure = function( settings_) | |||
90 | return type( val_) == "number" and val_ > 0 | 89 | return type( val_) == "number" and val_ > 0 |
91 | end, | 90 | end, |
92 | with_timers = boolean_param_checker, | 91 | with_timers = boolean_param_checker, |
93 | protect_allocator = boolean_param_checker, | 92 | allocator = function( val_) |
93 | -- can be nil, "protected", or a function | ||
94 | return val_ and (type( val_) == "function" or val_ == "protected") or true | ||
95 | end, | ||
94 | on_state_create = function( val_) | 96 | on_state_create = function( val_) |
95 | -- on_state_create may be nil or a function | 97 | -- on_state_create may be nil or a function |
96 | return val_ and type( val_) == "function" or true | 98 | return val_ and type( val_) == "function" or true |