| Сообщение от zeraid   | 
	| разобрался. вот так работает: 
 
 
setInterval(function() {
var data1 = $.ajax({
   type: "POST",
   url: "/mnemo_1.php",
   dataType: "text",
   async: false,
   success: function (data){data;},
   error: function(){alert('Problem');}
 }).responseText;
}, 3000);
       var s1 = new draw2d.Server("any_pkey1", data1,"up"); 
	 workflow.addFigure(s1, 100,100);
 | 
	
function loop( callback ){
var t = setInterval(function(){
   
d = $.ajax({
   type: "POST",
   url: "/ajax.html", // локальный файл, там текст "GOOD"
   dataType: "text",
   async: false,
   data: { func: 1 }
  
 }).responseText;
callback( d );
},1000);
this.stop = function(){ clearInterval(t); }
};//l
var t = new loop( console.log ); 
setTimeout( function(){t.stop();},3000) // через 3 сек остановка
в консоли выводит 
GOOD три раза
тут не могу запустить (скрипты запускается в ифрейме и на testbin)
еще так
 
function loop( callback ){
var t = setInterval(function(){
   
$.ajax({
   type: "POST",
   url: "/ajax.html", // локальный файл, там текст "GOOD"
   dataType: "text",
   async: false,
   data: { func: 1 },
   error: function(){alert('Problem');},
   success : function(data) { callback(data); }
  
 }).responseText;
},1000);
this.stop = function(){ clearInterval(t); }
};//l
var t = new loop( console.log ); 
setTimeout( function(){t.stop();},3000) // через 3 сек остановка
результаты одинаковые