parent
e04ba21b4a
commit
0de78a034a
|
|
@ -905,7 +905,7 @@ type TTslDebuga=class(TCustomControl)
|
||||||
if recvtype=0 then
|
if recvtype=0 then
|
||||||
begin
|
begin
|
||||||
FRemoteWait := 0;
|
FRemoteWait := 0;
|
||||||
ExecuteCommand("showstr","µ÷ÊÔ½áÊø");
|
ExecuteCommand("showstr","\r\nµ÷ÊÔ½áÊø");
|
||||||
if FConnectchannel then dbgdeletechannel(FConnectchannel);
|
if FConnectchannel then dbgdeletechannel(FConnectchannel);
|
||||||
FConnectchannel := 0;
|
FConnectchannel := 0;
|
||||||
g_tsldbgcallback_handle := nil;
|
g_tsldbgcallback_handle := nil;
|
||||||
|
|
@ -1019,7 +1019,7 @@ type TTslDebuga=class(TCustomControl)
|
||||||
end
|
end
|
||||||
FRemoteWait := 0;
|
FRemoteWait := 0;
|
||||||
if FCurrentgotoitem and FCurrentgotoitem.FEditer then FCurrentgotoitem.FEditer.ExecuteCommand("ecruningto",nil);
|
if FCurrentgotoitem and FCurrentgotoitem.FEditer then FCurrentgotoitem.FEditer.ExecuteCommand("ecruningto",nil);
|
||||||
ExecuteCommand("showstr","µ÷ÊÔ½áÊø");
|
ExecuteCommand("showstr","\r\nµ÷ÊÔ½áÊø");
|
||||||
toolbtnState("ֹͣ");
|
toolbtnState("ֹͣ");
|
||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -4251,7 +4251,7 @@ type tgtkapis = class() //gtk
|
||||||
_f_ := static function():integer;cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static function():integer;cdecl;external getfuncptrbyname(0,functionname());
|
||||||
return ##_f_();
|
return ##_f_();
|
||||||
end
|
end
|
||||||
procedure gtk_main ();
|
procedure gtk_main();
|
||||||
begin
|
begin
|
||||||
_f_ := static procedure();cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static procedure();cdecl;external getfuncptrbyname(0,functionname());
|
||||||
return ##_f_();
|
return ##_f_();
|
||||||
|
|
@ -4268,7 +4268,12 @@ type tgtkapis = class() //gtk
|
||||||
gtk_main();
|
gtk_main();
|
||||||
g_idle_remove_by_data(idledata); //ɾ³ýidle
|
g_idle_remove_by_data(idledata); //ɾ³ýidle
|
||||||
return 1;
|
return 1;
|
||||||
end
|
end
|
||||||
|
function g_main_depth(); //Returns the depth of the stack of calls
|
||||||
|
begin
|
||||||
|
_f_ := static function():integer;cdecl;external getfuncptrbyname(0,functionname());
|
||||||
|
return ##_f_();
|
||||||
|
end
|
||||||
function g_main_loop_new(ctx:pointer;is_running:integer):pointer;
|
function g_main_loop_new(ctx:pointer;is_running:integer):pointer;
|
||||||
begin
|
begin
|
||||||
_f_ := static function(ctx:pointer;is_running:integer):pointer;cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static function(ctx:pointer;is_running:integer):pointer;cdecl;external getfuncptrbyname(0,functionname());
|
||||||
|
|
@ -4279,6 +4284,11 @@ type tgtkapis = class() //gtk
|
||||||
_f_ := static procedure(loop:pointer);cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static procedure(loop:pointer);cdecl;external getfuncptrbyname(0,functionname());
|
||||||
return ##_f_(loop);
|
return ##_f_(loop);
|
||||||
end
|
end
|
||||||
|
function g_main_loop_get_context(lp:pointer):pointer;
|
||||||
|
begin
|
||||||
|
_f_ := static function(lp:pointer):pointer;cdecl;external getfuncptrbyname(0,functionname());
|
||||||
|
return ##_f_(lp);
|
||||||
|
end
|
||||||
function g_idle_add(f:pointer;d:pointer):integer;
|
function g_idle_add(f:pointer;d:pointer):integer;
|
||||||
begin
|
begin
|
||||||
_f_ := static function(f:pointer;d:pointer):integer;cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static function(f:pointer;d:pointer):integer;cdecl;external getfuncptrbyname(0,functionname());
|
||||||
|
|
@ -4315,35 +4325,34 @@ type tgtkapis = class() //gtk
|
||||||
return ##_f_(source,cr);
|
return ##_f_(source,cr);
|
||||||
end
|
end
|
||||||
function g_source_attach(source:pointer;ctx:pointer):integer;
|
function g_source_attach(source:pointer;ctx:pointer):integer;
|
||||||
begin
|
|
||||||
_f_ := static procedure(source:pointer;func:pointer;data:pointer;notify:poiner);cdecl;external getfuncptrbyname(0,functionname());
|
|
||||||
return ##_f_(source,func,data,notify);
|
|
||||||
end
|
|
||||||
function g_source_set_callback(source:pointer;ctx:pointer):integer;
|
|
||||||
begin
|
begin
|
||||||
_f_ := static function(source:pointer;ctx:pointer):integer;cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static function(source:pointer;ctx:pointer):integer;cdecl;external getfuncptrbyname(0,functionname());
|
||||||
return ##_f_(source,ctx);
|
return ##_f_(source,ctx);
|
||||||
end
|
end
|
||||||
|
function g_source_set_callback(source:pointer;func:pointer;data:pointer;notify:poiner):integer;
|
||||||
|
begin
|
||||||
|
_f_ := static procedure(source:pointer;func:pointer;data:pointer;notify:poiner);cdecl;external getfuncptrbyname(0,functionname());
|
||||||
|
return ##_f_(source,func,data,notify);
|
||||||
|
end
|
||||||
function g_main_context_default():pointer;
|
function g_main_context_default():pointer;
|
||||||
begin
|
begin
|
||||||
_f_ := static function():pointer;cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static function():pointer;cdecl;external getfuncptrbyname(0,functionname());
|
||||||
return ##_f_();
|
return ##_f_();
|
||||||
end
|
end
|
||||||
function g_main_context_pending(gc:pointer):integer;
|
function g_main_context_pending(gctx:pointer):integer;
|
||||||
begin
|
begin
|
||||||
_f_ := static function(gc:pointer):integer;cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static function(gctx:pointer):integer;cdecl;external getfuncptrbyname(0,functionname());
|
||||||
return ##_f_(gc);
|
return ##_f_(gctx);
|
||||||
end
|
end
|
||||||
function g_main_context_iteration(gc:pointer;bk:integer):integer;
|
function g_main_context_iteration(gctx:pointer;bk:integer):integer;
|
||||||
begin
|
begin
|
||||||
_f_ := static function(gc:pointer;bk:integer):integer;cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static function(gctx:pointer;bk:integer):integer;cdecl;external getfuncptrbyname(0,functionname());
|
||||||
return ##_f_(gc,bk);
|
return ##_f_(gctx,bk);
|
||||||
end
|
end
|
||||||
function g_main_context_get_poll_func(d:pointer):pointer;
|
function g_main_context_get_poll_func(ctx:pointer):pointer;
|
||||||
begin
|
begin
|
||||||
_f_ := static function(d:pointer):pointer;cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static function(ctx:pointer):pointer;cdecl;external getfuncptrbyname(0,functionname());
|
||||||
return ##_f_(d);
|
return ##_f_(ctx);
|
||||||
end
|
end
|
||||||
function g_source_is_destroyed(source:pointer):integer;
|
function g_source_is_destroyed(source:pointer):integer;
|
||||||
begin
|
begin
|
||||||
|
|
@ -4370,14 +4379,12 @@ type tgtkapis = class() //gtk
|
||||||
function gtk_drag_get_data(w:pointer;c:pointer;ls:pointer;tm:integer);
|
function gtk_drag_get_data(w:pointer;c:pointer;ls:pointer;tm:integer);
|
||||||
begin
|
begin
|
||||||
_f_ := static procedure(w:pointer;c:pointer;var ls:pointer;tm:integer);cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static procedure(w:pointer;c:pointer;var ls:pointer;tm:integer);cdecl;external getfuncptrbyname(0,functionname());
|
||||||
return ##_f_(w,c,ls,tm);
|
return ##_f_(w,c,ls,tm);
|
||||||
|
|
||||||
end
|
end
|
||||||
function gdk_drag_status(c:pointer;ac:integer;tm:integer);
|
function gdk_drag_status(c:pointer;ac:integer;tm:integer);
|
||||||
begin
|
begin
|
||||||
_f_ := static procedure(c:pointer;ac:integer;tm:integer);cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static procedure(c:pointer;ac:integer;tm:integer);cdecl;external getfuncptrbyname(0,functionname());
|
||||||
return ##_f_(c,ac,tm);
|
return ##_f_(c,ac,tm);
|
||||||
|
|
||||||
end
|
end
|
||||||
function gtk_drag_dest_set(w:pointer;flgs:integer;targets:pointer;ntg:integer;actions:integer):integer;
|
function gtk_drag_dest_set(w:pointer;flgs:integer;targets:pointer;ntg:integer;actions:integer):integer;
|
||||||
begin
|
begin
|
||||||
|
|
@ -4388,8 +4395,7 @@ type tgtkapis = class() //gtk
|
||||||
function gdk_drag_context_list_targets(c:pointerr);
|
function gdk_drag_context_list_targets(c:pointerr);
|
||||||
begin
|
begin
|
||||||
_f_ := static procedure(c:pointer);cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static procedure(c:pointer);cdecl;external getfuncptrbyname(0,functionname());
|
||||||
return ##_f_(c);
|
return ##_f_(c);
|
||||||
|
|
||||||
end
|
end
|
||||||
function gtk_selection_data_get_text(d:pointer);
|
function gtk_selection_data_get_text(d:pointer);
|
||||||
begin
|
begin
|
||||||
|
|
@ -4401,8 +4407,7 @@ type tgtkapis = class() //gtk
|
||||||
begin
|
begin
|
||||||
_f_ := static function(d:pointer):pointer;cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static function(d:pointer):pointer;cdecl;external getfuncptrbyname(0,functionname());
|
||||||
return ##_f_(d);
|
return ##_f_(d);
|
||||||
end
|
end
|
||||||
|
|
||||||
function gdk_atom_name(a:pointer):string;
|
function gdk_atom_name(a:pointer):string;
|
||||||
begin
|
begin
|
||||||
_f_ := static function(d:pointer):pointer;cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static function(d:pointer):pointer;cdecl;external getfuncptrbyname(0,functionname());
|
||||||
|
|
@ -4473,7 +4478,6 @@ type tgtkapis = class() //gtk
|
||||||
end
|
end
|
||||||
function gtk_drag_finish(ctx,suc,del,tm);
|
function gtk_drag_finish(ctx,suc,del,tm);
|
||||||
begin
|
begin
|
||||||
//return ;
|
|
||||||
_f_ := static procedure(ctx:pointer;suc:integer;del:integer;tm:integer);cdecl;external getfuncptrbyname(0,functionname());
|
_f_ := static procedure(ctx:pointer;suc:integer;del:integer;tm:integer);cdecl;external getfuncptrbyname(0,functionname());
|
||||||
return ##_f_(ctx,suc,del,tm);
|
return ##_f_(ctx,suc,del,tm);
|
||||||
end
|
end
|
||||||
|
|
@ -9691,8 +9695,7 @@ begin
|
||||||
return 1;
|
return 1;
|
||||||
end
|
end
|
||||||
return 1; //r
|
return 1; //r
|
||||||
end
|
end else
|
||||||
else
|
|
||||||
begin
|
begin
|
||||||
tslprocessmessages(false);
|
tslprocessmessages(false);
|
||||||
//sleep(10);
|
//sleep(10);
|
||||||
|
|
@ -9704,8 +9707,8 @@ begin
|
||||||
tslprocessmessages(false);
|
tslprocessmessages(false);
|
||||||
//sleep(10);//ÐÝÏ¢Ò»ÏÂ
|
//sleep(10);//ÐÝÏ¢Ò»ÏÂ
|
||||||
end
|
end
|
||||||
unit(uvclthreadworker).RunThreadWorkerHost();
|
if unit(uvclthreadworker).RunThreadWorkerHost() then r := 1;
|
||||||
if r=0 then sleep(30);
|
if r=0 then sleep(25);
|
||||||
//get_m_m_q().idleworked := r;
|
//get_m_m_q().idleworked := r;
|
||||||
return true;
|
return true;
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -65,10 +65,21 @@ type TCustomThreadworker = class(t_worker_host)
|
||||||
if not FThreaders then return ;
|
if not FThreaders then return ;
|
||||||
set_heartbeat();
|
set_heartbeat();
|
||||||
lsdata := nil;
|
lsdata := nil;
|
||||||
for idx,i in mrows(FThreaders,1) do
|
///////////////打乱排序避免某些线程消息总是滞后///////////////////
|
||||||
|
idxs := mrows(FThreaders,1);
|
||||||
|
if idxs then
|
||||||
|
begin
|
||||||
|
for idx,i in idxs do
|
||||||
|
begin
|
||||||
|
idxs[idx] := array(i,random());
|
||||||
|
end
|
||||||
|
idxs := sselect[0] from idxs order by [1] end ;
|
||||||
|
end
|
||||||
|
//////////////////////////////////////////////
|
||||||
|
for idx,i in idxs do
|
||||||
begin
|
begin
|
||||||
o := FThreaders[i];
|
o := FThreaders[i];
|
||||||
msg := o.fetch(data,nil,lsdata);
|
msg := o.fetch(data,true,lsdata);
|
||||||
if msg then
|
if msg then
|
||||||
begin
|
begin
|
||||||
case msg of
|
case msg of
|
||||||
|
|
@ -101,7 +112,8 @@ type TCustomThreadworker = class(t_worker_host)
|
||||||
o.DoOnMessage(data);
|
o.DoOnMessage(data);
|
||||||
end
|
end
|
||||||
end;
|
end;
|
||||||
break;
|
return true;
|
||||||
|
//break;
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
@ -261,7 +273,7 @@ end
|
||||||
implementation
|
implementation
|
||||||
function RunThreadWorkerHost();
|
function RunThreadWorkerHost();
|
||||||
begin
|
begin
|
||||||
class(TCustomThreadworker).dispatch();
|
return class(TCustomThreadworker).dispatch();
|
||||||
end
|
end
|
||||||
type t_worker_base = class()
|
type t_worker_base = class()
|
||||||
function Operator [](idx);
|
function Operator [](idx);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue