From 1021bb621b5268cabbe087c41d28a533d12757d3 Mon Sep 17 00:00:00 2001 From: renwj Date: Wed, 1 Nov 2023 17:14:10 +0800 Subject: [PATCH] =?UTF-8?q?Revert=20"Revert=20"[6.1.2][=E7=BA=BF=E7=A8=8B?= =?UTF-8?q?=E4=BC=98=E5=8C=96]=20=E5=8D=87=E7=BA=A7=E7=89=88=E6=9C=AC?= =?UTF-8?q?=EF=BC=8C=E6=9B=B4=E6=94=B9=E5=88=9D=E5=A7=8B=E5=8C=96=E6=96=B9?= =?UTF-8?q?=E5=BC=8F""?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 142d7d1bdabdd20fe041b9ad9cedc199500b50fb. --- app/matrixTrace/blackMethodList.txt | 3 +- build.gradle | 2 +- config.gradle | 4 +- .../mogo-core-function-hmi/build.gradle | 2 + .../function/main/MainMoGoApplication.java | 6 +- .../main/threadopt/ThreadOptInitializer.java | 47 ++++++++++++++++ .../mogo-core-function-startup/build.gradle | 1 - .../function/startup/MogoStartUpProvider.kt | 2 - .../function/startup/stageone/APMStartup.kt | 2 +- .../startup/stageone/ThreadOptStartup.kt | 56 ------------------- gradle.properties | 4 +- 11 files changed, 58 insertions(+), 71 deletions(-) create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/threadopt/ThreadOptInitializer.java delete mode 100644 core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/ThreadOptStartup.kt diff --git a/app/matrixTrace/blackMethodList.txt b/app/matrixTrace/blackMethodList.txt index b1cfcf574c..502b68e02b 100644 --- a/app/matrixTrace/blackMethodList.txt +++ b/app/matrixTrace/blackMethodList.txt @@ -1,5 +1,6 @@ [package] --keeppackage com/mogo/thread/ext/ +-keeppackage com/mogo/thread/opt/core/ +-keeppackage com/mogo/eagle/core/function/main/threadopt/ -keeppackage com/mogo/launcher -keeppackage com/rousetime/android_startup/ -keeppackage com/mogo/systrace/ diff --git a/build.gradle b/build.gradle index 61b458a85c..214e6b777c 100644 --- a/build.gradle +++ b/build.gradle @@ -30,7 +30,7 @@ buildscript { classpath "com.mogo.cloud:hook:${service_chain_version}" classpath "com.mogo.cloud:bizconfig:${plugin_version}" classpath 'com.volcengine:apm_insight_plugin:1.4.2' - classpath "com.mogo.thread.opt:plg:10.2.1_mogo" + classpath "com.mogo.thread.opt:plg:10.10.0" classpath "com.mogo.cloud:systrace:${plugin_version}" classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.18' classpath "com.mogo.sticky:service:${plugin_version}" diff --git a/config.gradle b/config.gradle index e43065fca1..24ec0962c1 100644 --- a/config.gradle +++ b/config.gradle @@ -215,7 +215,7 @@ ext { //========================= autosize ====================== androidautoSize : 'com.github.JessYanCoding:AndroidAutoSize:v1.2.1', - thread_opt : "com.mogo.thread.opt:lib:10.2.1_mogo", + thread_opt : "com.mogo.thread.opt:lib:10.10.0", weak_network : "com.mogo.weak:network:1.0.1", btrace : "com.bytedance.btrace:rhea-core:2.0.0", @@ -240,6 +240,6 @@ ext { ] } -boolean isM1Chip() { +static boolean isM1Chip() { return System.getProperty("os.name").contains("Mac") && System.getProperty("os.arch") == "aarch64" } \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/build.gradle b/core/function-impl/mogo-core-function-hmi/build.gradle index 238cd8709e..6df031e493 100644 --- a/core/function-impl/mogo-core-function-hmi/build.gradle +++ b/core/function-impl/mogo-core-function-hmi/build.gradle @@ -75,6 +75,8 @@ dependencies { implementation rootProject.ext.dependencies.koomjava implementation rootProject.ext.dependencies.koomnative implementation rootProject.ext.dependencies.koomxhook + + implementation rootProject.ext.dependencies.thread_opt api project(':test:crashreport-apmbyte') compileOnly project(':core:function-impl:mogo-core-function-datacenter') implementation project(':foudations:mogo-commons') diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java index 8912c45ec6..5c98f74e04 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java @@ -5,7 +5,6 @@ import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_MAI import android.content.Context; import com.bytedance.boost_multidex.BoostMultiDex; -import com.mogo.cloud.socket.SocketBuildConfig; import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.debug.DebugConfig; import com.mogo.commons.module.MogoModule; @@ -15,14 +14,12 @@ import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.data.constants.MogoServicePaths; import com.mogo.eagle.core.function.api.chat.biz.ChatConsts; import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager; -import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager; import com.mogo.eagle.core.function.call.startup.CallerStartUpManager; +import com.mogo.eagle.core.function.main.threadopt.ThreadOptInitializer; import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils; import com.mogo.eagle.core.utilcode.mogo.AppLaunchTimeUtils; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import java.lang.reflect.Field; - /** * 默认初始化一些基础服务配置 */ @@ -80,6 +77,7 @@ public abstract class MainMoGoApplication extends AbsMogoApplication { @Override protected void attachBaseContext(Context base) { super.attachBaseContext(base); + ThreadOptInitializer.init(); /*如果是主进程**/ // if (ProcessUtils.isMainProcess(this)) { AppLaunchTimeUtils.beginTimeCalculate(AppLaunchTimeUtils.COLD_START); diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/threadopt/ThreadOptInitializer.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/threadopt/ThreadOptInitializer.java new file mode 100644 index 0000000000..65aa172428 --- /dev/null +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/threadopt/ThreadOptInitializer.java @@ -0,0 +1,47 @@ +package com.mogo.eagle.core.function.main.threadopt; + + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import com.mogo.thread.opt.core.ThreadManager; +import com.mogo.thread.opt.core.annotation.Keep; +import com.mogo.thread.opt.core.config.ThreadConfig; +import java.util.concurrent.ThreadPoolExecutor; +import java.util.concurrent.TimeUnit; + + +@Keep +public class ThreadOptInitializer { + + + private static final ThreadConfig.TaskExecuteListener listener = new ThreadConfig.TaskExecuteListener() { + @Override + public boolean isEnabled() { + return true; + } + + @Override + public void onExecutorBefore(@NonNull ThreadConfig.TaskType taskType, @Nullable Object task, @Nullable String desc) { + + } + + @Override + public void onExecutorAfter(@NonNull ThreadConfig.TaskType taskType, @Nullable Object task, @Nullable String desc) { + + } + + @Override + public void onExecutorStateChanged(@NonNull ThreadPoolExecutor threadPoolExecutor, int core, int max, int active, long completed) { + + } + }; + + + public static void init() { + ThreadConfig.Builder builder = new ThreadConfig.Builder(); + builder.minKeepAliveTime(1, TimeUnit.SECONDS); + builder.maxKeepAliveTime(10, TimeUnit.SECONDS); + builder.listener(listener); + ThreadManager.INSTANCE.init(builder); + } +} diff --git a/core/function-impl/mogo-core-function-startup/build.gradle b/core/function-impl/mogo-core-function-startup/build.gradle index 9ac8c3caf2..e70626291f 100644 --- a/core/function-impl/mogo-core-function-startup/build.gradle +++ b/core/function-impl/mogo-core-function-startup/build.gradle @@ -47,7 +47,6 @@ dependencies { kapt rootProject.ext.dependencies.aroutercompiler implementation rootProject.ext.dependencies.android_start_up - implementation rootProject.ext.dependencies.thread_opt implementation project(':core:mogo-core-function-call') implementation project(":test:crashreport") diff --git a/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/MogoStartUpProvider.kt b/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/MogoStartUpProvider.kt index 29acccff70..88d0736fcc 100644 --- a/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/MogoStartUpProvider.kt +++ b/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/MogoStartUpProvider.kt @@ -7,7 +7,6 @@ import com.mogo.eagle.core.data.constants.MogoServicePaths import com.mogo.eagle.core.function.api.startup.IStartUpProvider import com.mogo.eagle.core.function.startup.stageone.APMStartup import com.mogo.eagle.core.function.startup.stageone.HttpDnsStartUp -import com.mogo.eagle.core.function.startup.stageone.ThreadOptStartup import com.mogo.eagle.core.function.startup.stagetwo.* import com.rousetime.android_startup.StartupListener import com.rousetime.android_startup.StartupManager @@ -54,7 +53,6 @@ class MogoStartUpProvider : IStartUpProvider { StartupManager.Builder() .addStartup(HttpDnsStartUp()) .addStartup(APMStartup()) - .addStartup(ThreadOptStartup()) .setConfig(config) .build(it) .start() diff --git a/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/APMStartup.kt b/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/APMStartup.kt index be1cf35858..a8d46eb498 100644 --- a/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/APMStartup.kt +++ b/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/APMStartup.kt @@ -21,6 +21,6 @@ class APMStartup : AndroidStartup() { } override fun dependenciesByName(): List { - return listOf("com.mogo.eagle.core.function.startup.stageone.ThreadOptStartup") + return emptyList() } } \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/ThreadOptStartup.kt b/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/ThreadOptStartup.kt deleted file mode 100644 index 3e6e293b92..0000000000 --- a/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/ThreadOptStartup.kt +++ /dev/null @@ -1,56 +0,0 @@ -package com.mogo.eagle.core.function.startup.stageone - -import android.content.* -import android.os.Process -import android.os.Trace -import android.util.* -import com.mogo.thread.ext.core.* -import com.mogo.thread.ext.core.config.* -import com.mogo.thread.ext.core.config.priority.* -import com.mogo.thread.ext.core.trace.* -import com.rousetime.android_startup.* -import java.io.* -import java.text.* -import java.util.* -import java.util.concurrent.TimeUnit.SECONDS - -class ThreadOptStartup: AndroidStartup() { - - override fun create(context: Context): Boolean { - ThreadManager - .init(ThreadConfig.Builder() - .maxKeepAliveTime(10, SECONDS) - .minKeepAliveTime(5, SECONDS) - .priorityConfig(PriorityConfig.Builder() - .checkInterval(1, SECONDS) - .setPriority("GLThread\\s+\\d+", Process.THREAD_PRIORITY_BACKGROUND) - .setPriority("Dispatch-\\w+", Process.THREAD_PRIORITY_BACKGROUND) - .build()) - .traceConfig(TraceConfig.Builder() - .enabled(false) - .trace(object : ITrace { - override fun enter(section: String) { - //Trace.beginSection(section) - //Log.d("TTTTTT", "enter->$section" ) - } - override fun exit() { - //Trace.endSection() - } - }) - .build()) - /*.dump(DumpConfig.Builder() - .dumpLogFilePath(File(context.getExternalFilesDir(null), "thread_dump_log_${ SimpleDateFormat("yyyy-MM-dd-HH-mm-ss", Locale.ROOT).format(Date()) }.txt").absolutePath) - .dumpPeriod(5, SECONDS) - .threadRunThreshold(10, SECONDS) - .build())*/) - return true - } - - override fun callCreateOnMainThread(): Boolean { - return true - } - - override fun waitOnMainThread(): Boolean { - return true - } -} \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index d068d9387c..6cd618bd86 100644 --- a/gradle.properties +++ b/gradle.properties @@ -10,7 +10,7 @@ org.gradle.daemon=true org.gradle.configureondemand=true org.gradle.parallel=true -org.gradle.jvmargs=-Xmx4096m +org.gradle.jvmargs=-Xmx6144m #开启gradle缓存 org.gradle.caching=true android.enableBuildCache=true @@ -146,8 +146,6 @@ ADAS_DATA_LIB_CHILD_VERSION=.4 # 是否支持patch升级 PATCH_UPGRADE_SUPPORT=true -# 线程优化版本 -THREAD_OPT_VERSION=4.0.1 # matrix版本 MATRIX_VERSION=2.0.8