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
Per discussion with @springmeyer , outlining possible next steps for node-cpp-skel and capturing best practices to document and integrate into the skel design.
Questions to answer
What does it look like to have the variable that represents an instance of a class accessible in the threadpool?
What is the role of a singleton and how is it related to other design patterns for sync/async?
When passing data to thread pool, the data needs to be a type that is safe to pass into the thread pool. What makes a type safe to pass into the thread pool?
Two scenarios that are safe:
Copy data to a C++ object (pure, part of the C++ std lib...not V8)
Copy V8 data: Extra work to keep the V8 object alive, avoids the object perhaps getting deleted (trick: use v8::Persistant)
Designing skel:
Goal 1)
Provide examples of objects that feel real-world, actionable, and sturdy
Unlocks: ability to fork and run fast and feel confidence the foundation is a best practice
Goal 2)
Provide incremental examples that build complexity gradually
Unlocks: easier for beginning developers to understand gradually why extra complexity is needed
Preliminary conclusion: object-sync is caught between these worlds
Per chat with @springmeyer when running through #51, I plan to:
split the README into different docs:
/docs/*.md: Info about C++ best practices, add-on conventions, explanation of files, and general 101
README.md: The main README will be a great template README that developers can use for their own add-ons when using the skel as a baseline (how to install, run tests, build, publish, etc)
Finalize object_async example
Expand in the docs why each example is relevant/useful and when you would use each
Comment sweep: Run through each example and config files to make sure relevant info is included and consistent within the comments, and that API.md is up to date
Performance section? Per chat with @springmeyer , we discussed that we should iterate on the bench/performance docs after having a realworld module in progress using the skel. See next check box below. But really want to make this a highlight since this is one of the main inspirations behind this skel, how to write high performance code.
Put it into action by creating a new module from scratch (chat with @springmeyer about what module that could be). And use this as a way to feed missing docs/comments/examples back into the skel.
@GretaCB thanks for catching up on skel today voice. To help get to the finish line for this phase I've reviewed all open issues and commented on ones that I think are actionable. Of those that are actionable I think these are the priority things to finish before you move along:
Activity
GretaCB commentedon Jul 11, 2017
Update
Per chat with @springmeyer when running through #51, I plan to:
/docs/*.md: Info about C++ best practices, add-on conventions, explanation of files, and general 101README.md: The main README will be a great template README that developers can use for their own add-ons when using the skel as a baseline (how to install, run tests, build, publish, etc)API.mdis up to datespringmeyer commentedon Jul 12, 2017
mapbox/cpp@92af068 and mapbox/cpp@beb75bf
springmeyer commentedon Aug 2, 2017
@GretaCB thanks for catching up on skel today voice. To help get to the finish line for this phase I've reviewed all open issues and commented on ones that I think are actionable. Of those that are actionable I think these are the priority things to finish before you move along:
springmeyer commentedon Aug 25, 2017
woot @GretaCB - everything above is checked. Shall we close?