trueName varchar yes 内容来自www.paper51.com
真实姓名 http://www.paper51.com
city 内容来自论文无忧网 www.paper51.com varchar copyright paper51.com
yes 内容来自论文无忧网 www.paper51.com 城市 paper51.com
paper51.com
varchar 内容来自www.paper51.com
yes copyright paper51.com
内容来自www.paper51.com tel http://www.paper51.com number 内容来自论文无忧网 www.paper51.com yes 内容来自论文无忧网 www.paper51.com 电话 内容来自论文无忧网 www.paper51.com 表4-3数据存储表: 内容来自www.paper51.com Field 内容来自论文无忧网 www.paper51.com Type paper51.com
Null http://www.paper51.com
Key 内容来自论文无忧网 www.paper51.com Default http://www.paper51.com
Extra copyright paper51.com ID paper51.com
int 内容来自www.paper51.com not 内容来自www.paper51.com pri 内容来自论文无忧网 www.paper51.com 编号(auto_) http://www.paper51.com User1 paper51.com varchar 内容来自www.paper51.com not http://www.paper51.com User2 copyright paper51.com varchar paper51.com not copyright paper51.com (四) 共享数据结构设计 http://www.paper51.com 同一进程中的多个线程共存于同一个线性地址空间,因此,在多线程间共享数据结构是非常容易且方便的。但必须注意的是,对数据结构的访问必须是多线程互斥的,否则数据任意更改将导致不可预料的结果。我们的设计是通过服务器转发技术也就是通过共享数据结构实现线程间的互相通信。 http://www.paper51.com 这个程序的共享数据结构一共有两个,其中包含了所有登陆用户的一些基本资料,当前服务器接收到的用户端所发送的信息资料,通过接收线程接收用户所发送的信息,通过线程同步,使用cmutex进行数据的传送,每当有用户连接到服务器,服务器就将用户端的一些信息以结构体的形式存入用户列表中;而当服务器接收到用户端发送过来的信息时,就将数据格式化后存入结构体中,通过与结构体列表比较,确定需要恢复的发送线程。这样,服务器就准确地转了发数据。 http://www.paper51.com
五、关键代码分析 http://www.paper51.com 完成总体设计和详细设计之后,我们需要把前面设计的“蓝图”用程序语言表示出来,这样才可以交付计算机进行执行。作为软件工程的一个环节,编程是设计的自然结果,因此,程序的质量主要取决于软件设计的质量。但是,程序设计语言的特性和编码途径也会对程序的可靠性、可读性、可维护性、可预测性产生深远的影响。 http://www.paper51.com
|