def cdssequencethreads(self):
        """
        Extracts the sequence of each gene for each strain
        """
        # Create and start threads
        for i in range(self.cpus):
            # Send the threads to the appropriate destination function
            threads = Thread(target=self.cdssequence, args=())
            # Set the daemon to true - something to do with thread management
            threads.setDaemon(True)
            # Start the threading
            threads.start()
        for sample in self.metadata.samples:
            # Initialise a dictionary to store the sequence of each core gene
            sample[self.analysistype].coresequence = dict()
            self.sequencequeue.put(sample)
        self.sequencequeue.join()
Extracts the sequence of each gene for each strain