Messenger插件异步消息

时间:2014-01-23 21:03:26

标签: asynchronous xamarin.android mvvmcross

我想使用Stuart的messenger插件在业务流程完成时提供即时用户消息。例如。在我的BL课程中我有代码:

    var message = new UserMessages(this, "STARTING PROCESS");
            _messenger.Publish<UserMessages>(message );

                //PROCESS START

            message = new UserMessages(this, "READING FILE 1");
            _messenger.Publish<UserMessages>(message);

                 //READING FILE 1 PROCESS 

       message = new UserMessages(this, "ENDING PROCESS");
            _messenger.Publish<UserMessages>(message);

                //END PROCESS

我希望我的订阅者以异步方式显示消息(即时在gui中)。我试过用

     _token = messenger.SubscribeOnThreadPoolThread<UserMessages>(OnImportMessage);

在我的viewmodel中,因为我认为这是SubscribeOnThreadPoolThread应该做的,但它没有告诉我预期的结果含义:

1.用户点击一个按钮,根据上面的消息服务,用户必须在textedit控件内看到:

1.开始过程 2.READING FILE1 3.ENDING PROCESS

我最终在屏幕上显示的是最后一条消息“ENDING PROCESS”,因为最终整个过程都是主线程的一部分。

我想了解如何使用messenger插件异步执行此操作。

我是否需要使用额外的异步/等待操作?

我希望这对你有用。

提前致谢

0 个答案:

没有答案