小编Tai*_*ier的帖子

如何在我的应用程序中正确运行定时进程,当应用程序正在使用或在后台时,它将在停止时启动?

我有一个应用程序启动并每分钟运行一次数据库的后台检查.以下是此代码.

我得到了我认为是内存泄漏的东西,我正在查看循环代码的所有区域.

是否有可能将此代码留在循环状态并导致内存泄漏,或者onSleep和onResume编码100%确定正确停止和启动定时器循环的方式?

请注意,我只希望代码的定时部分在使用应用程序和前台时每分钟运行一次.

namespace Japanese
{
    public partial class App : Application
    {

        private static Stopwatch stopWatch = new Stopwatch();

        public App()
        {
            InitializeComponent();
            MainPage = new Japanese.MainPage();
        }

        protected override void OnStart()
        {
            App.DB.InitData();

            if (!stopWatch.IsRunning) 
                stopWatch.Start();

            Device.StartTimer(new TimeSpan(0, 0, 1), () =>
            {
                if (stopWatch.IsRunning && stopWatch.Elapsed.Minutes >= defaultTimespan)
                {
                    Debug.WriteLine("Checking database");
                    PointChecker.CheckScore();
                    stopWatch.Restart();
                }
                return true;
            });
        }

        protected override void OnSleep()
        {
            stopWatch.Reset();
        }

        protected override void OnResume()
        {
            stopWatch.Start();
        }

    }
}
Run Code Online (Sandbox Code Playgroud)

xamarin xamarin.forms

5
推荐指数
1
解决办法
196
查看次数

为Android编译C++ gRPC

如何为Android编译C++ gRPC代码?我已经看过几个关于如何使用Android Native Development Kit编译Protobuf本身的教程,例如Swapnil的答案:如何与Android NDK集成/安装最新的c ++ protobuf(3.2)?

谷歌protobuf和Android NDK

但是如何编译使用Protobuf以及Android的C++ gRPC代码呢?考虑到有20K行的gRPC Makefile.

c++ makefile protocol-buffers android-ndk grpc

5
推荐指数
1
解决办法
743
查看次数

如何找出一周的第一天?(周一或周日)

我想检查用户一周的第一天是星期一还是星期日,以便使用日历执行某些操作。是否可以确定使用NSCalendar或任何其他方式?

nscalendar ios

1
推荐指数
1
解决办法
766
查看次数