wendux / DSBridge-IOS

:earth_asia: A modern cross-platform JavaScript bridge, through which you can invoke each other's functions synchronously or asynchronously between JavaScript and native.
1.96k stars 305 forks source link

异步调用超过小于50毫秒pending #82

Open linwaiwai opened 5 years ago

linwaiwai commented 5 years ago

[strongSelf evalJavascript:50]; 为什么这个调用需要等待50ms之后处理。

wendux commented 5 years ago

防止频繁调用JS卡死,50ms是一个tick,批量执行js

Buliceli commented 1 year ago

但是您把50的参数传递到- (void)evalJavascript:(int)delay { dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delay NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ @synchronized(self) { if ([jsCache length] != 0) { [self evaluateJavaScript:jsCache completionHandler:nil]; isPending = false; jsCache = @""; lastCallTime = [[NSDate date]timeIntervalSince1970]1000; } } }); } 这个函数里 要给我延时50秒再执行 是不是太慢了呢 50秒啊大神