github.com/XiaoMi/Gaea@v1.2.5/util/mocks/pipeTest/assets/PipeTest测试函数抽换缓存时序图.txt (about)

     1  @startuml
     2  participant MockClient
     3  participant Pipe
     4  participant MockServer
     5  
     6  group #lightYellow 初始化 [建立客户端和服务端的连接]
     7      MockClient->>Pipe: mockClient 连接到 Pipe
     8      MockServer->>Pipe: mockServer 连接到 Pipe
     9      
    10      alt #Pink 进行修改的部份
    11          MockClient->>Pipe: 用 OverwriteConnBufWrite() 抽換寫入緩存
    12          MockClient->>Pipe: 用 Reset 重置写入连接
    13      end
    14  
    15  end
    16  
    17  loop 5次
    18  
    19      group #lightYellow 客户端传送讯息到服务端 [包含重置连接,等待连接读写完成]
    20          MockClient->>Pipe: 使用 SendOrReceive() 传送讯息1
    21          MockServer->>Pipe: 使用 Reply() 读取 Pipe 里的讯息1
    22          MockClient->>MockClient: 等待 Pipe 读写操作流程完成
    23          MockClient->>Pipe: 使用 ResetDcMockers() 单方向重置 Pipe
    24          MockServer->>MockServer: 决定回传的讯息,在测试环境下,原讯息的数值加1,等于之后的讯息
    25      end
    26  
    27      group #lightYellow 服务端传送讯息到客户端 [包含重置连接,等待连接读写完成]
    28          MockServer->>Pipe: 使用 SendOrReceive() 传送讯息2
    29          MockClient->>Pipe: 使用 Reply() 读取 Pipe 里的讯息2
    30          MockServer->>MockServer: 等待 Pipe 读写操作流程完成
    31          MockServer->>Pipe: 使用 ResetDcMockers() 单方向重置 Pipe
    32          MockClient->>MockClient: 决定回传的讯息,在测试环境下,原讯息的数值加1,等于之后的讯息
    33      end
    34  
    35  end
    36  
    37  @enduml