android - "Atomicity"两个设备通信中

标签 android communication

我想从设备 A(发送方)向设备 B(接收方)发送短数据,
这样如果设备 B 将保存数据,那么设备 A 必须将其从存储中删除

如果 B 不保存或 A 不删除通信必须恢复(就好像根本没有通信一样)

通信是在不稳定的信道上进行的,所以很有可能发生这种情况 在某些部分被打破。

我该如何解决这个问题?

它可以在 C++ 中。

最佳答案

基于 TCP 的算法(可靠、有序、错误检查的传送):

  1. A将数据发送给B
  2. B保存数据
  3. B 发送 OK 给 A
  4. A永久删除数据
  5. B 只保留数据(不删除它)。

异常(exception)情况:

  • 如果某些步骤失败,请不要执行下一步。
  • 如果 B 没有从 A 收到 OK,则 B 不会永久保存数据。
  • 如果 A 没有收到 B 的 OK,A 不会永久删除数据。

按节点详细说明:

一个

  1. 向B发送数据
  2. 等待确定
  3. 接收成功
  4. 删除数据

B

  1. 接收数据
  2. 保存数据
  3. 发送成功
  4. 接收成功

关于android - "Atomicity"两个设备通信中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20639041/

相关文章:

android - 询问android中正确的支持库

java - SQLite 数据库问题

android - 如何创建一个应用程序来监控我的 android 手机访问的 ip?

android - 自定义主题背景颜色 : Theme. AppCompat.NoActionBar

python - Django在不同进程中处理数据

algorithm - 如何引用 "equivalent"算法

C# 客户端 Python 服务器 : Connection refused

android - Twitter API 401 位于/account/verify_credentials

php - 在没有全局 pdo 对象的情况下使此执行工作

python - TCP 通信 Python 上的 ValueError