Java 如果在30秒内未返回值,则退出函数

Java 如果在30秒内未返回值,则退出函数,java,multithreading,Java,Multithreading,我有一些java代码可以发送短信。 它会在15秒内多次返回交付报告。(但有时不会发生) 如果在15秒内没有发送发送报告,我想停止该短信发送功能。 如果可以,请提供类似的示例代码或 给我一些链接,我应该阅读这样做 非常感谢 ` ` 如果我输入了错误的端口号,代码就会被卡住 Service.getInstance().startService(); 如果我提供了正确的端口号,则在15秒之前收到交付报告。 若我给出了错误的端口号,代码不会给出或返回任何值。 如果代码在15秒内没有返回值,我知道端口

我有一些java代码可以发送短信。

它会在15秒内多次返回交付报告。(但有时不会发生)

如果在15秒内没有发送发送报告,我想停止该短信发送功能。

如果可以,请提供类似的示例代码或

给我一些链接,我应该阅读这样做


非常感谢


`

`
如果我输入了错误的端口号,代码就会被卡住

Service.getInstance().startService();
如果我提供了正确的端口号,则在15秒之前收到交付报告。

若我给出了错误的端口号,代码不会给出或返回任何值。 如果代码在15秒内没有返回值,我知道端口号是错误的。

因此,如果函数在15秒内未返回值,我需要帮助自动关闭该函数。


再次感谢

你应该制作一个线程,如果在15秒内没有任何事情发生,就停止它。 我的意思是这样的:

Thread t = new Thread(){
    @Override
    public void run()
    {
         // Send SMS
    }
}
t.start();
// ...
long time = System.currentTimeMillis();
while(true)
{
    if(System.currentTimeMillis() - time > 15000)
         t.stop();
}

我希望你明白我说的话

所以你要我们做家庭作业?告诉我们你到现在为止都做了些什么。尝试一下,如果你遇到麻烦,那么有很多人可以帮助你。但关键是你们应该先试试。它卡在哪里了?在Java代码中,从描述来看,我怀疑?在运行SQL时,那么是哪个数据库?主机上的外部命令?没有足够的信息来回答。请注意,
Thread.stop
不推荐使用,因为它本身就不安全:如果有可能,请修复阻塞代码,或者尝试找出在具体情况下是否有更安全的方法来解除阻塞(例如,通过中断其
线程.sleep
并修改某些属性,使其不会返回睡眠状态)。
Thread t = new Thread(){
    @Override
    public void run()
    {
         // Send SMS
    }
}
t.start();
// ...
long time = System.currentTimeMillis();
while(true)
{
    if(System.currentTimeMillis() - time > 15000)
         t.stop();
}