本文整理匯總了TypeScript中tns-core-modules/utils/utils.GC函數的典型用法代碼示例。如果您正苦於以下問題:TypeScript GC函數的具體用法?TypeScript GC怎麽用?TypeScript GC使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。
在下文中一共展示了GC函數的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: clearPage
export function buildUIWithWeakRefAndInteract<T extends View>(createFunc: () => T, interactWithViewFunc?: (view: T) => void, done?) {
clearPage();
const page = getCurrentPage();
const weakRef = new WeakRef(createFunc());
page.content = weakRef.get();
if (interactWithViewFunc) {
interactWithViewFunc(weakRef.get());
}
page.content = null;
// Give a change for native cleanup (e.g. keyboard close, etc.).
TKUnit.wait(0.001);
if (page.ios) {
/* tslint:disable:no-unused-expression */
// Could cause GC on the next call.
// NOTE: Don't replace this with forceGC();
new ArrayBuffer(4 * 1024 * 1024);
// An additional GC and wait are needed since WebKit upgrade to version 12.0
// (TEXT-FIELD.testMemoryLeak test started failing sporadically)
utils.GC();
TKUnit.wait(0.1);
}
utils.GC();
try {
TKUnit.assert(!weakRef.get(), weakRef.get() + " leaked!");
done(null);
}
catch (ex) {
done(ex);
}
}
示例2: forceGC
export function forceGC() {
if (isIOS) {
/* tslint:disable:no-unused-expression */
// Could cause GC on the next call.
new ArrayBuffer(4 * 1024 * 1024);
}
utils.GC();
TKUnit.wait(0.001);
}
示例3: clear
export function clear(args) {
repeaterIds
.map(name => args.object.page.getViewById(name))
.forEach(repeater => {
repeater.bindingContext = null;
});
args.object.page.getViewById("title").text = "---";
utils.GC();
}