Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python3
- # -*- coding: utf-8 -*-
- import logging
- import random
- import threading
- import time
- # begin boilerplate
- try:
- random = random.SystemRandom()
- using_sysrandom = True
- except NotImplementedError:
- import warnings
- warnings.warn('A secure pseudo-random number generator is not available '
- 'on your system. Falling back to Mersenne Twister.')
- using_sysrandom = False
- # Set default logging handler to avoid "No handler found" warnings.
- try: # Python 2.7+
- from logging import NullHandler
- except ImportError:
- class NullHandler(logging.Handler):
- def emit(self, record):
- pass
- logger = logging.getLogger(__name__)
- logger.addHandler(NullHandler())
- # end boilerplate
- class Task(threading.Thread):
- """A dummy task with a random execution time in the range [1, 10] seconds"""
- def run(self):
- logger.debug('%s: started', self.name)
- time.sleep(random.randint(1, 10)) # random wait [1, 10] sec
- logger.info('%s: done', self.name)
- def main():
- tasks = [Task().start() for _ in range(10)]
- if __name__ == '__main__':
- logging.basicConfig(level=logging.INFO)
- logger.setLevel(logging.DEBUG)
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement