Python Thread ile Alakalı

Herkese selamlar arkadaşlar selenium ile yaptığım bir bot uygulamam var ve bu uygulamaya bir PYQT5 ile geliştirdiğim UI mevcut. Buraya kadar istediğim her şey istediğim gibi. UI üzerinden uygulamaya start verdiğim zaman bir thread ile selenium ile geliştirmiş olduğum sınıfı çağırarak çalıştırıyorum. Uygulamayı durdurmak istediğim zaman ise başlattığım threadi sonlandırabilmek istiyorum. Bir de özellik olarak uygulamaya 1, 5 ve 10 ar dakika gecikme ekleme seçenekleri de mevcut. Herhangi bir gecikme eklemediğimde durdur butonuna basarak webdrive.close() işlemini yapan fonksiyonu devreye sokarak tarayıcıyı sonlandırabiliyorum ve bununla birlikte thread de sonlanıyor ama herhangi bir geciktirme seçeneği seçtiğimde durdurmak istediğimde ise tarayıcı kapanıyor fakat thread sonlanmıyor dolayısıyla program ui 'i kapatsam dahi sonlanmıyor. Bunu nasıl bir yol izleyerek çözümleyebilirim ?

MarketPlace sınıfı => selenium uygulamasının çalıştırıldığı sınıf.
def_to_list => fonksiyonu pathi verilen excel dosyasının listeye çevirme işlemini gerçekleştiren fonksiyon

  def main(self, email, password, advert_type, advert_timer, excel_path):
      product_list = df_to_list(excel_path)
      self.process = MarketPlace(email, password, advert_type, advert_timer)
      self.process.login()
      for product in product_list:
          self.process.products_for_sale(product)
          if advert_timer != 0:
              time.sleep(advert_timer * 60)
      self.process.stop()

bu " main " fonksiyonu gui sınıfında oluşturulan bir fonksiyon başlat butonuna basıldığında çağrılan " start " fonksiyonu thread içerisinde bu methodu çalıştırıyor. bknz;

  def start(self):
      if self.btn_start.text() == 'Başlat':
          email = self.tb_email.text()
          password = self.tb_password.text()
          advert_type = self.get_selected_rbtn()
          advert_timer = self.get_selected_time()
          excel_path = self.lineEdit.text()
          self.th = Thread(target=self.main, args=(email, password, advert_type, advert_timer, excel_path))
          self.th.start()
          self.btn_start.setText("Durdur")
      else:
          self.process.stop() => #bu stop fonskiyonu MarketPlace clasına ait webdriver ı sonlandıran method
          self.btn_start.setText("Başlat")

Thread sınıfında threadi durdurmak diye bir şey yok diye biliyorum. Sizin yerinizde olsam Process sınıfını kullanırdım. Durdurmak gerektiğinde terminate metodunu kullanırdım.

kesinlikle istediğimi process ile halledebildim. teşekkür ederim.