Notex

主页

关于

归档

Hello World

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub. Quick StartCreate a new post$ hexo new "My New Post" More info: Writing Run server$ hexo server More info: Server Generate static files$ hexo generate ..

Read more
loading..
JavaThreadThread-Safe

Java 中线程的状态及转换

线程是操作系统中能够进行运算调度的最小单位了。它被包含在进程中,是进程在运行过程中,真正的『打工人』。每一个进程有且至少有一个线程存在,默认的线程我们可以把它叫作『主线程』。 在 Java 中,进行线程的切换是一件比较浪费资料的事情,这意味着代码的执行需要从用户态切换到内核态,然后再从内核态切换回用户态。但这也不是说我们不能用线程,合理的使用可以提高程序执行的吞吐率。 既然上面提到了『线程切换』,那我们就来聊聊,线程的几种状态。

Read more
loading..

MVC-MVP-MVVM 进化之路

众所周知,日常开发中,比较受欢迎的设计模式,除了单例、工厂、装饰器等之外,被大家讨论最多的,就是 MVC、MVP 和 MVVM 了。 这三种设计模式各有千秋,耦合度都比较低,并且易于测试与维护。我们今天就来讨论一下这三种设计模式在开发中的应用。

Read more
Flutter

Flutter 的 Isolate 与事件循环机制

在 Dart 中,没有『多线程』的概念,在绝大多数的开发中,只会用到 UI 线程,也就是 Android 中所谓的『主线程』。 但是 Dart 给我们提供了异步编程的方式,来让我们『同步』地编写『异步』的代码。也即await/async关键字。在运行一些代码时,UI 线程还会继续渲染 Widget Tree,不会卡死。 那么单线程的 Dart 是如何实现这种看起来像『多线程』的机制的呢?这里我们要先介绍一个概念:Isolate。

Read more
1234512