JavacriptのSetIntervalの処理について
下記のようなコードでTableauと呼ばれるオブジェクトをSetIntervalでリロードしています。
ただしSetIntervalは定期的にリロード処理の完了、未完了に無関係に実行キューを吐いてしまいます。リロード処理が間に合わない場合更新がとまってしまいので、何かいい方法はないでしょうか?
よろしくお願いします。
<!DOCTYPE html>
<html lang="en">
<head>
<title>Tableau JavaScript API</title>
<script type="text/javascript" src="http://servername/javascripts/api/tableau_v8.js"></script>
</head>
<body>
<div id="tableauViz"></div>
<script type='text/javascript'>
var placeholderDiv = document.getElementById("tableauViz");
var url = "http://servername/t/311/views/Mayorscreenv5/MayorScreenv2";
var options = {
hideTabs: true,
width: "100%",
height: "1000px"
};
var viz = new tableauSoftware.Viz(placeholderDiv, url, options);
setInterval(function () {viz.refreshDataAsync() }, 3000);
</script>
</body>
</html>