如果我在java程序执行同步函数时关闭它,它会完成吗

如果我在java程序执行同步函数时关闭它,它会完成吗,java,synchronized,Java,Synchronized,使用Java 在这里提问之前,我做了一些研究,但仍然找不到答案。我正在编写一个应用程序,它连接到twitter的流api并接收一些推文。我打算运行程序几个小时,然后我需要中断它 到目前为止,我的项目中还没有多线程,我正在努力避免这种情况。如果我使tweet同步的函数,即使我在程序执行时关闭了程序,它也会完成吗?如果应用程序中没有多线程,为什么需要同步?没关系,你的申请会完成的。按Ctrl+C只会中断所有线程并正常关闭。不,它不会完成。同步不会阻止System.exit()退出 也就是说,除非您使

使用Java

在这里提问之前,我做了一些研究,但仍然找不到答案。我正在编写一个应用程序,它连接到twitter的流api并接收一些推文。我打算运行程序几个小时,然后我需要中断它


到目前为止,我的项目中还没有多线程,我正在努力避免这种情况。如果我使tweet同步的函数,即使我在程序执行时关闭了程序,它也会完成吗?

如果应用程序中没有多线程,为什么需要同步?没关系,你的申请会完成的。按Ctrl+C只会中断所有线程并正常关闭。

不,它不会完成。同步不会阻止
System.exit()
退出

也就是说,除非您使用Ctrl-C终止您的程序,否则项目中会有一些多线程。否则,当另一个方法正在执行时,您将无法调用
System.exit()