Asynchronous prime-checking

Moving on from our starting counting-down example, let's reconsider the example from the previous chapter. As a refresher, the following is the code for the synchronous version of the program:

# Chapter09/example1.pyfrom math import sqrtdef is_prime(x):    print('Processing %i...' % x)    if x < 2:        print('%i is not a prime number.' % x)    elif x == 2:        print('%i is a prime number.' % x)    elif x % 2 == 0:        print('%i is not a prime number.' % x)    else:        limit = int(sqrt(x)) + 1        for i in range(3, limit, 2):            if x % i == 0:                print('%i is not a prime number.' % x)                return        print('%i is a prime number.' % x)if __name__ == '__main__':    is_prime(9637529763296797)    is_prime(427920331)    is_prime(157)

As we discussed in the last chapter, here, ...

Get Mastering Concurrency in Python now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.