You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Thanks to #26, async API calls from threads are now implemented correctly. This may resolve some problems and allow some additional cleanups.
Maybe proper unit test is required? (not sure)
@wookayin I don't think so, the current tests should already catch that.
Should we prevent creating wrapper function instance every time?
@wookayin I don't think it has an impact on performance. However, is there a particular reason why you preferred the wrapper function over calling nvim.async_call() directly?
It seems now that that we schedule API calls correctly, there are some interactions with other plugins. E.g., I observed that using Semshi with deoplete now slows it down significantly. Is there something we can do about it?
The text was updated successfully, but these errors were encountered:
Thanks for your follow-up. For the first two items, I agree with you. Initially I tried with calling like nvm.async_call(fn, arg1, arg2, kwarg=1) but it was a bit confusing to me. Generally speaking the wrapper style seems more intuitive to me as it looks more like calling a callable (function).
For the latter two items, I'm not quite sure. But I would be happy to help with following them up.
Wrapping the callable makes a lot of sense, but I think I'd prefer lambda expressions because that spares us the extra wrapper function while keeping the code easy to read. E.g. instead of
Thanks to #26, async API calls from threads are now implemented correctly. This may resolve some problems and allow some additional cleanups.
@wookayin I don't think so, the current tests should already catch that.
@wookayin I don't think it has an impact on performance. However, is there a particular reason why you preferred the wrapper function over calling
nvim.async_call()
directly?Is it still necessary to use
call_atomic()
in small batches or does Use nvim.async_call in non-main threads #26 remediate that issue?It seems now that that we schedule API calls correctly, there are some interactions with other plugins. E.g., I observed that using Semshi with deoplete now slows it down significantly. Is there something we can do about it?
The text was updated successfully, but these errors were encountered: