title: my class instances disappear when they iterate through a for loop
body: <p>So I am trying to open a series of web browsers at the same time. I have no issue doing this when I call individual class instances (correct me if it's instance of object). 
  I'm trying to make my code more pretty and feed the args to the instances through a for loop. The browsers open fine but then they all disappear. I was told that this has to do with garbage collection but not sure how to get around it. Please help.</p>
  
  <pre><code>from selenium import webdriver
  from threading import Thread
  
  
  class Dashboard(Thread):
  
      def __init__(self, position, url):
          super().__init__()       
          self.position = position
          self.url = url
  
      def run(self):
  
          chrome_options = webdriver.ChromeOptions()
          chrome_options.add_argument('--window-size=256,160')
          #chrome_options.add_argument('--start-maximized')
          chrome_options.add_argument(self.position)
          self.driver = webdriver.Chrome(options=chrome_options)
          self.driver.get(self.url)
  
  
  pos = ['--window-position=100,100', '--window-position=1000,1000']
  web = ['https://www.youtube.com', 'https://www.facebook.com']
  
  
  for a, b in zip(pos, web):
  
      screen = Dashboard(a, b).start()
  </code></pre>