Toggle navigation
Toggle navigation
This project
Loading...
Sign in
liuming
/
developer-docs
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
echo
2016-03-16 15:51:25 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
4ff4f0355088c937f08cfe7b74aaa951a8741ee2
4ff4f035
1 parent
484e8c65
Updated 远程教学之消息顺序保证机制 (markdown)
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
2 deletions
远程教学之消息顺序保证机制.md
远程教学之消息顺序保证机制.md
View file @
4ff4f03
[
返回远程教学相关文档
](
远程教学相关文档
)
以IOS目前的实现思路为例说明
###
以IOS目前的实现思路为例说明
针对页面内的动作消息进行同步处理,包括按钮的点击,手势操作以及播放器的播放等
#### 发送方记录的同步信息:
*
学习页的编号(从0开始递增,每次进入学习页,本次学习的总学习页编号加1)
*
页内动作的编号(从0开始递增,在学习内内,每做一个动作,该页的动作编号加1,在进入新的学习页后重置为0)
### 接收方的同步信息
*
期待的学习页的编号(从0开始,每次收到新的符合顺序的学习页信息,本编号加1)
*
期待的页内动作的编号(从0开始,每次收到信的符合顺序的页内动作信息,本编号加1)
### 同步策略
*
构造1个本地缓存队列
*
本地有变量记录期待收到的消息序号
*
本地有变量记录期待收到的
学习页的序号,和
消息序号
*
当收到的消息符合不符合期待序号的时候,把该消息缓存到队列
*
当收到的消息符合期待序号的时候,直接处理该消息,更新期待的消息序号,处理完消息后检查缓存队列中是否有期待的消息序号,如果有则拿出来继续处理,重复执行本条逻辑直到缓存队列中没有期待的消息序号为止。
*
当切换页面或者结束课程的时候,重置期待消息序号,清空队列。
\ No newline at end of file
...
...
Please
register
or
login
to post a comment