我从我的活动中调用另一个类的方法,该方法使用ksoap2调用web服务.我想为此处理超时.如果该方法执行时间超过10秒,那么我需要显示一个警告对话框,指示该过程不成功.
我尝试使用超时值,如下所示:
HttpsTransportSE transport = new HttpsTransportSE(URL,TIMEOUT);
Run Code Online (Sandbox Code Playgroud)
但ksoap2由于某种原因忽略了超时.我正在使用ksoap2 2.6.5.
有没有办法在哪里可以执行该方法10秒,然后显示相应的对话框,指示android的成功或失败?
我有一些像这样的ruby代码:
result1 = function_1(params)
result2 = function_2(params)
result3 = function_3(params)
Run Code Online (Sandbox Code Playgroud)
但有时其中一些可能需要花费太多时间才能工作(此功能取决于互联网连接速度).如果需要超过5秒钟,我需要终止函数的执行.我应该如何用ruby-way做到这一点?
我期待一些错误,如500或超时页面,代码如下:
<?php
ini_set('max_execution_time',5);
set_time_limit(5);
echo 'start';
sleep(10);
echo '<br/>hi';
Run Code Online (Sandbox Code Playgroud)
但是,我得到这样的东西:
start hi
我做错了吗?
我想要的只是在第5秒超时时看到脚本停止,所以不应该执行第二个回声(我知道这是一个非常奇怪的要求)
任何人都可以轻视,谢谢.
PS:似乎sleep()部分非常分散注意力,我怎么改变这样的代码:
<?php
ini_set('max_execution_time',5);
set_time_limit(5);
echo 'start';
for($i=1;$i<100000000;$i++){
if($i%100==2) echo $i;
else echo '--';
}
echo '<br/>hi';
Run Code Online (Sandbox Code Playgroud) AFAIK,PostgreSQL 8.3不支持事务超时。我已经阅读了有关将来支持此功能的信息,并对此进行了一些讨论。但是,由于特定原因,我需要针对此问题的解决方案。所以我做了一个定期运行的脚本:
1)基于锁和活动,进行查询以检索耗时太长的事务的processID,并保留最旧的事务(trxTimeOut.sql):
SELECT procpid
FROM
(
SELECT DISTINCT age(now(), query_start) AS age, procpid
FROM pg_stat_activity, pg_locks
WHERE pg_locks.pid = pg_stat_activity.procpid
) AS foo
WHERE age > '30 seconds'
ORDER BY age DESC
LIMIT 1
Run Code Online (Sandbox Code Playgroud)
2)根据此查询,终止相应的进程(trxTimeOut.sh):
psql -h localhost -U postgres -t -d test_database -f trxTimeOut.sql | xargs kill
Run Code Online (Sandbox Code Playgroud)
尽管我已经对其进行了测试并且似乎可以工作,但是我想知道这是一种可接受的方法还是应该考虑使用其他方法?
我有一个连接到服务器的应用程序.我设置了超时,将设备与Internet断开连接并尝试执行post请求以查看是否已调用超时,但连接始终等待.这是我的代码:
private static final int TIMEOUT_OPS = 3000 ;
private HttpClient mHttpClient;
public String sendToken(String token) throws IOException, AuthenticationException {
JSONArray jsonData = new JSONArray();
jsonData.put(token);
final HttpPost post = prepareJSONRequest(jsonData.toString(), SEND_TOKEN_METHOD);
HttpClient httpClient = getConnection();
Log.i(TAG, "Sending request");
final HttpResponse resp;
try{
resp = httpClient.execute(post);
}catch(Exception e){
e.printStackTrace();
return null;
}
Log.i(TAG, "Got response");
...
}
private HttpPost prepareJSONRequest(String rest_data, String method) throws AssertionError {
AbstractHttpEntity entity = null;
try {
final ArrayList<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair(KEY_PARAM_METHOD, …Run Code Online (Sandbox Code Playgroud) 我知道我们可以在blob上获得60秒或无限的租约.对于以下代码:
var account = CloudStorageAccount.DevelopmentStorageAccount;
var blob = account.CreateCloudBlobClient().GetBlobReference("container/blob");
var leaseId = blob.AcquireLease();
blob.UploadByteArray(bytes);
blob.ReleaseLease(leaseId);
Run Code Online (Sandbox Code Playgroud)
如果uploadBtyeArray时间因文件大小而异.如何在上传完成之前继续续订租约.
此致,Vivek
我有一个网站进行ajax调用,然后加载一个gif来在电视上显示静态.但是现在ajax调用没有足够的时间让效果真正流行起来.所以我想知道是否有办法设置ajax调用的最短时间?
你可以看到我想要的网站,以便更好地了解我在做什么.尝试单击右侧相框或桌面上的留声机.
<script type="text/javascript">
var minDelay = 1000;
var start = new Date();
$.get("form.html", function(result) {
callback($(result).find("#contact"));
var end = new Date();
var timeInMilliseconds = end - start;
if (timeInMilliseconds < minDelay) {
setTimeout(function() { callback(result); }, minDelay - timeInMilliseconds );
}
else callback(result);
});
$.get("music.html", function(result) {
callback($(result).find("#music"));
var end = new Date();
var timeInMilliseconds = end - start;
if (timeInMilliseconds < minDelay) {
setTimeout(function() { callback(result); }, minDelay - timeInMilliseconds );
}
else callback(result);
});
function …Run Code Online (Sandbox Code Playgroud) 不知道为什么它不起作用,我认为代码很好 - 你能告诉我什么是错的吗?我需要在一段时间间隔之后添加一些课程......
$('.main_menu ul li').mouseenter(function(){
setTimeout(function(){
$(this).children('.sub_menu_main').addClass('opened')
},200);
});
$('.main_menu ul li').mouseleave(function(){
$(this).children('.sub_menu_main').removeClass('opened')
});
Run Code Online (Sandbox Code Playgroud) Thin的代码/文档表明默认连接超时为30秒.但是,当我尝试测试时,它似乎不起作用.我错过了什么?
我正在使用瘦v1.5.0(最新版本).
# Test this using: curl -X GET http://localhost:3000/test. You will find that the request does not
# timeout after 30s.
require 'thin'
class SimpleAdapter
def call(env)
sleep 100
body = ["hello!"]
[
200,
{ 'Content-Type' => 'text/plain' },
body
]
end
end
server = Thin::Server.new('127.0.0.1', 3000) do
map '/test' do
run SimpleAdapter.new
end
end
server.start!
Run Code Online (Sandbox Code Playgroud) 我正在使用NuSOAP为支付网关使用Web服务,但是,此网关的文档要求:
问题是,我不知道如何使用PHP和NuSOAP处理该超时.当超时时,NuSOAP是否会返回任何特定的响应?我现在怎么实际超时?
以下是NuSOAP调用的一段代码:
$client = new nusoap_client( 'http://webserviceurl?wsdl...' , 'wsdl');
$err = $client->getError();
if ($err)
die('Constructor error: ' . $err);
$proxy = $client->getProxy();
$payTrans = $proxy->doPayment(array('someparams' => 'somevalues'));
// if doPayment() timed out, then run the getStatus() method
Run Code Online (Sandbox Code Playgroud)
任何投入将不胜感激.谢谢!
timeout ×10
android ×2
execution ×2
http ×2
jquery ×2
php ×2
ruby ×2
addclass ×1
ajax ×1
azure ×1
blobs ×1
handlers ×1
javascript ×1
ksoap2 ×1
max ×1
nusoap ×1
post ×1
postgresql ×1
removeclass ×1
terminate ×1
thin ×1
time ×1
transactions ×1
web-services ×1
webserver ×1