WPF 为什么是单线程模型(STA)

WPF是单线程模型.

这是,任何一本wpf书籍,开宗明义的一句话.

可是,我却从来没真正理解过,这句话的背后的涵义是森么?

同时, 技术书的讲解,焦点也放在,单线程模式,如何跟界面交互这个具体问题上;

没有讲到一个重要的点.

就是, 有多线程模型的应用程序吗?

这才是重点, 告诉我们wpf单线程, 肯定不理解,单线程怎么了, 有啥缺点,, 多线程怎么搞呢?

书上,就是不提,,

其实, 据我所知, 微信小程序就是双线程的App;

一个线程负责绘制画面,另一个线程,负责用户交互,互操作

看到没, 这就是两者的区别.  拿出另一个例子, 作为对比, 一下子,就清晰了.

有助于下一步,继续理解微软的设计思想了.

咱们大微软,根本不需要两个线程, 一个线程模型多简单啊. 单单熟练掌握线程通信,同步,  都让扩招大学生吃不消啊.

微软靠着单线程模型,实现交互和绘制画面两功能.

交互如何做, 不卡画面呢?

底层原来需要看类图.

最基础的父类叫DispaterObject, 用户操作都可以被UI的Dispatcher属性安排排队重新绘制画面的;

就像做核酸一样. 排着队, 等着轮到你..

 

posted @ 2022-05-21 13:39  猫眼三姐妹  阅读(148)  评论(0编辑  收藏  举报