1. In a network device with a processor that runs multiple software threads for a software application that needs an update or patch, a method for updating the software while attempting to achieve minimal service disruption, the method comprising: installing, in a thread coordination zone, at least one new function, at least one copy of at least one existing function, and a synchronization code, wherein the synchronization code indicates whether synchronization of the multiple software threads is complete; changing a first instruction in the at least one existing function to jump to the thread coordination zone; synchronizing the multiple software threads in the network device; based on the synchronization code indicating that the synchronization of the software threads is not complete, using, by the multiple software threads, the at least one copy of the at least one existing function; and based on the synchronization code indicating that the synchronization of the software threads is complete, using, by the multiple software threads, the at least one new function, wherein the multiple software threads continually run on the network device during the synchronization.