草庐IT

主线程

全部标签

android - 即使在使用 CordovaInterface.getThreadPool() 之后,Cordova Exec 也会阻塞主线程

我收到以下警告:THREADWARNING:exec()calltoMyPlugin.setAndroidPreferencesblockedthemainthreadfor49ms.PluginshoulduseCordovaInterface.getThreadPool().但是在我的代码中,我使用了cordova.getThreadPool():privatebooleansetAndroidPreferences(finalJSONArrayargs,finalCallbackContextcallbackContext){cordova.getThreadPool().exe

android - 如何在 API 级别 < 28 上获取主线程的执行器

在API级别28(Pie)上,Context类中引入了一个新方法来获取主线程的执行器getMainExecutor().如何在API级别低于28时获取此执行器? 最佳答案 您可以使用(例如在Activity中):ContextCompat.getMainExecutor(this);https://developer.android.com/reference/androidx/core/content/ContextCompat.html#getMainExecutor(android.content.Context)

android - 主线程中的工作太多,应用程序卡住

在这里,我调用了一个Activity,它是一个聊天应用程序。猫日志:02-2612:30:38.996:I/Choreographer(807):Skipped35frames!Theapplicationmaybedoingtoomuchworkonitsmainthread.02-2612:30:39.196:I/Choreographer(807):Skipped31frames!Theapplicationmaybedoingtoomuchworkonitsmainthread.02-2612:30:39.516:I/Choreographer(807):Skipped31fr

Android,Handler 是运行在主线程还是其他线程?

我有以下代码。publicclassSplashScreenextendsActivity{privateint_splashTime=5000;/**Calledwhentheactivityisfirstcreated.*/@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.splash);getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCRE

android - doOnSubscribe 在主线程上被调用

在阅读了多篇博文和文档之后,我得出的结论是以下doOnSubscribe将在工作线程上执行:Observable.just(1).observeOn(Schedulers.io()).doOnSubscribe(__->Log.d("Testing","Testing"))//Shouldn'tthisbeonworkerthread?.subscribe();但是在调试之后,我看到doOnSubscribe是在主线程上执行的。我认为doOnSubscribe与其他运算符类似,因此在与subscribeOn和observeOn结合使用时具有类似的线程行为。我错过了什么?如何将doOnS

android - 从主线程查询android中的数据库

我正在使用sqllite,我通常查询1个表。如果我从主ui线程进行查询是不是很糟糕?谢谢 最佳答案 这取决于。如果您的表真的很大,执行查询可能会花费一些时间,并且可能会导致您的应用出现明显的延迟。此外,您说您通常只查询一个表,所以这就留下了对其他表进行更多查询的可能性。作为一般规则,我会使用AsyncTasks在后台线程中做很多工作,例如查询和下载,因为即使它们现在不会花费很长时间,它也会给我额外的自由来扩展应用程序而无需大量重写。 关于android-从主线程查询android中的数据

android - 如果从主线程执行方法,如何抛出异常

我有一个具有多种方法的类,可以从sqlite数据库中提取数据。我想“强制”此类的用户在线程或异步任务中调用这些方法。如何阻止方法在主线程上运行?我想实现类似于当您尝试在ui线程上进行一些联网时抛出的android.os.NetworkOnMainThreadException的东西。 最佳答案 做类似的事情:if(Looper.myLooper()==Looper.getMainLooper()){thrownewDontDoThisOnUiThreadPleaseException();}来源:Looper.getMainLoop

android - 如果这是主线程崩溃,如何从 UncaughtExceptionHandler 启动 Activity ?

如果检测到未处理的异常,我正在尝试启动错误报告Activity。问题是从主线程抛出的异常。如果主线程崩溃,有什么方法可以启动Activity吗? 最佳答案 我见过的用于在UncaughtExcpetionHandler中捕获错误的方法就是将崩溃数据写入文件,然后根据崩溃数据文件的存在,在应用重启时启动错误处理Activity。根据您希望Activity执行的操作,这可能适合您。 关于android-如果这是主线程崩溃,如何从UncaughtExceptionHandler启动Activi

java - 跳过 49 帧!应用程序可能在其主线程上做了太多工作

我在我的viewpager实现中膨胀View(不是fragment)。我的主类扩展了Activity。当我尝试从我的应用或滑动屏幕时遇到此错误在com.example.app.CustomPagerAdapter.instantiateItem(CustomPagerAdapter.java:47)和01-0416:44:35.5278614-8614/com.parsizabanan.appW/dalvikvm﹕threadid=1:threadexitingwithuncaughtexception(group=0x4195ee48)01-0416:44:35.5278614-86

javascript - 主线程上的 Firebase 同步 XMLHttpRequest 已弃用

我正在开发phonegap/cordovaionic应用程序。我正在iOS和Android上进行测试。在iOS上一切正常。但是在Android上,当我的一个View加载时我收到以下消息:SynchronousXMLHttpRequestonthemainthreadisdeprecatedbecauseofitsdetrimentaleffectstotheenduser'sexperience.Formorehelp,checkhttp://xhr.spec.whatwg.org/.每次我收到此“警告”时-我的View都不会加载。发往/发自firebase的.lp?dframe=t&