Github user achristianson commented on a diff in the pull request:

    https://github.com/apache/nifi-minifi-cpp/pull/43#discussion_r101507876
  
    --- Diff: libminifi/src/ThreadedSchedulingAgent.cpp ---
    @@ -64,11 +68,18 @@ void ThreadedSchedulingAgent::schedule(Processor 
*processor)
                return;
        }
     
    +   auto processContext = std::make_shared<ProcessContext>(processor);
    --- End diff --
    
    @phrocker Mainly, creating a shared ProcessContext and SessionFactory which 
will be used in this thread as well as the threads created in the loop below. I 
wanted these objects to be cleaned up once they go out of scope in all threads. 
The raw pointers are only used to integrate with the existing Processor pointer 
that is passed-in, as well as passing raw pointers to the constructors of the 
new shared objects. I wanted to minimize function/constructor changes that 
might have impacts elsewhere in the code base. If we want to move more to 
having managed pointers across the code base, then some of this can be cleaned 
up.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to