title: When does sidekiq end a process, and thus release memory?
body: <p>From the little I know of the inner workings of Ruby it only releases memory once the process if finished.</p>
  
  <p>I'm debugging a very long running sidekiq Heroku process with memory issues and I'm trying to figure out the boundaries of a background process.</p>
  
  <p>So... say I have sidekiq using 3 threads, and it's running 3 jobs at a time, and I have 100 jobs total. That mean its likely there will never be a break between jobs right? Does that mean memory won't be released until all 100 jobs are done? I'm assuming yes, it won't release until the 100 are finished.</p>
  
  <p>But say I switch to 1 thread, and the 100 jobs run after each other. Will each job now be it's own process, or will sidekiq treat all those 100 queued jobs as a single process (even though it's only running one at a time)?</p>
  
  <p>If so... is there a way to make each job it's own individual process which releases memory after it's done?</p>