Dyman的博客


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

源码分析-GLSurfaceView的内部实现

发表于 2017-09-01 |
前言GLSurfaceView类是继承自SurfaceView的,并且实现了SurfaceHolder.Callback2接口。GLSurfaceView内部管理着一个surface,专门负责OpenGL渲染。GLSurfaceView内部通过GLThread和EGLHelper为我们完成了EGL环 ...
阅读全文 »

源码分析-Retrofit

发表于 2017-09-01 | 分类于 Android |

一、Retrofit的大致使用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
public interface ZhihuService {
/**
* 获取消息具体内容
* @param new_id 消息对应ID
* @return
*/
@GET("api/4/news/{new_id}")
Observable<NewsDetailInfo> getNewsDetail(@Path("new_id") String new_id);
}
public static final String API_URL = "http://news-at.zhihu.com/";
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(API_URL)
.client(mOkHttpClient)
.addCallAdapterFactory(RxJavaCallAdapterFactory.create())
.addConverterFactory(GsonConverterFactory.create())
.build();
retrofit.create(ZhihuService.class)
.getNewsDetail("19")
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe();
阅读全文 »

源码分析-RxJava

发表于 2017-08-29 |
一、前言Rxjava是用Java实现的ReactiveX框架开源库,ReactiveX就是大名鼎鼎的响应式编程。而响应式编程和观察者模式又是紧紧相关联的。 二、观察者模式1)基本原理观察者模式时对象的行为模式,又叫发布-订阅模式,即让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化 ...
阅读全文 »

源码分析-ZeroMQ连接的建立与重连机制

发表于 2017-08-11 |
ZeroMQ,作为一个消息通信的框架,最重要的还是通信的可靠性,而这其中最重要的就是连接断开之后的重连接机制。在这里,我们分别分析一下ZMQ的连接建立过程和重连接过程。 回顾在分析之前,我们先来回顾一下SocketBase、SessionBase和Poller这几个类的关系。 ZeroMQ是一个 ...
阅读全文 »

史上最快的消息队列:ZeroMQ

发表于 2017-08-09 |
ZeroMQ最近在公司实习使用到这个消息传输框架,发现传输效率真的不是一般的快,而且还非常任性地支持随机连接顺序,即可以client先连接、server后上线,在服务器的应用上还可以用于分布式扩展。这里向大家安利一波,也算是记录自己在ZMQ方面的学习的过程~ 官方说法: ZMQ是一个简单好用的传输层 ...
阅读全文 »

synchronized与对象的Monitor

发表于 2017-08-07 |
synchronized介绍关于synchronized我们已经在《synchronized与Lock》一文中进行了比较全面的介绍。 当我们使用synchronized修饰方法名时,编译后会在方法名上生成一个ACC_SYNCHRONIZED标识来实现同步;当使用synchronized修饰代码块时, ...
阅读全文 »

Thread和Runable的区别

发表于 2017-08-06 |
1、 Thread是类,Runable是接口;java中要实现多线程,要么继承Thread类并覆写本类中的run()方法,要么实现Runnable接口的run()方法。 这两中方式最终都是通过调用start()方法来实现多线程。切记不能直接调用Thread类或Runnable对象的run()方法,因 ...
阅读全文 »
dyman

dyman

7 日志
1 分类
3 标签
GitHub E-Mail
© 2018 dyman
博客访客数:
由 Hexo 强力驱动
|
主题 — NexT.Pisces v5.1.4