<commit_before>---
layout: post
title: "基于Runloop的自定义主线程任务调度"
date: 2018-06-04 16:13:00.000000000 +08:00
tags: Runloop
---

### 前言
前段时间工作不忙，深入学习了一些 Runloop 相关的知识。在学习和研究的过程中，也对网上相互抄来抄去的知识点有了一些透彻的认识，并且编写了一套简陋的代码，命名为 **CPFRunloopTaskManager**，用于解决一些必须在主线程处理的任务又要防止页面卡顿的问题。现开篇记录一下。

项目地址：[https://github.com/githubError/MessyRepository/tree/master/CPFRunloopDemo](CPFRunloopTaskManager)
<commit_msg>add Article<commit_after>---
layout: post
title: "基于Runloop的自定义主线程任务调度"
date: 2018-06-04 16:13:00.000000000 +08:00
tags: Runloop
---

### 前言
前段时间工作不忙，深入学习了一些 Runloop 相关的知识。在学习和研究的过程中，也对网上相互抄来抄去的知识点有了一些透彻的认识，并且编写了一套简陋的代码，命名为 **CPFRunloopTaskManager**，用于解决一些必须在主线程处理的任务又要防止页面卡顿的问题。现开篇记录一下。

项目地址：[CPFRunloopTaskManager](https://github.com/githubError/MessyRepository/tree/master/CPFRunloopDemo)

{'fraction_non_alphanumeric': 0.12944162436548223, 'fraction_numerical': 0.06852791878172589, 'mean_word_length': 9.115384615384615, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 2, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2873174', 'n_tokens_mistral': 528, 'n_tokens_neox': 545, 'n_words': 35}