what if someone tries to finish public keys by non-stop creating
Yes, in theory but it would take so long that neither you, nor I will still be alive by a long shot.

At about 10,000 key pairs per second, with an address space of 2^160, it would take you 50 tredecillion years to finish.

Thats 50,000,000,000,000,000,000,000,000,000,000,000,000,000,000 years
To put that into perspective, the age of the universe is about 13,000,000,000 years