极速多用户网页音乐播放器(框架固定形式/底部音乐播放器)
<div><p>此网页使用了框架,但您的浏览器不支持框架。</p></div>
摘要: 前面有一篇文章讲单例实现,但是代码有bug。新的实现方法如下:Singleton.hView Code 1 #ifndef _SINGLETON_H_ 2 #define _SINGLETON_H_ 3 4 class Singleton 5 { 6 public: 7 int getValue(); 8 static Singleton* Instance(); 9 private:10 Singleton();11 //Singleton(const Singleton& inst);//赋值拷贝函数此处不再需要,因为析构函数为私有,类外无法生成实例12... 阅读全文
posted @ 2013-04-18 00:36 飞鼠溪 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 程序是基于TCP的,只是为了测试,功能并不完善。大多数的心跳都是UDP协议。当服务器端的数据和心跳在同一端口时,TCP协议很容易出现心跳被阻塞的情况。服务器端代码:View Code 1 #include <unistd.h> 2 #include <arpa/inet.h> 3 #include <netinet/in.h> 4 #include <sys/socket.h> 5 #include <iostream> 6 #include <string.h> 7 #include <cstdlib> 8 阅读全文
posted @ 2013-04-15 23:25 飞鼠溪 阅读(476) 评论(0) 推荐(0) 编辑
摘要: select系统条用允许程同时在多个底层文件描述符上等待输入的到达(或输出的完成)。一般在linux系统上,标准输入的文件描述符是0;标准输出的文件描述符是1;标准错误的文件描述符是2;在Posix定义分别定义为:STDIN_FILENO,STDOUT_FILENO,STDERR_FILENO他们都包含在unistd.h头文件中以下代码对于并发连接并不能够同时处理,可以在数据处理部分起多线程处理服务器端代码如下(客户端代码不做修改):View Code 1 #include <sys/types.h> 2 #include <sys/socket.h> 3 #inclu 阅读全文
posted @ 2013-04-15 21:03 飞鼠溪 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 客户端通信流程:1)、创建ClientSocket2)、初始化ServerAddr3)、连接到服务器connect4)、利用write、read进行读写操作5)、关闭ClientSocket简单代码如下:View Code 1 #include <netinet/in.h> 2 #include <arpa/inet.h> 3 #include <unistd.h> 4 #include <iostream> 5 #include <sys/socket.h> 6 #include <cstdlib> 7 8 using 阅读全文
posted @ 2013-04-15 20:12 飞鼠溪 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 服务端代码:View Code 1 #include <sys/un.h> 2 #include <unistd.h> 3 #include <iostream> 4 #include <sys/socket.h> 5 6 using std::cout; 7 const int MAX_DATA_LEN = 255; 8 9 int main(int argc, char** argv)10 {11 int server_sockfd = 0;12 int client_sockfd = 0;13 int server_len = 0;14 i 阅读全文
posted @ 2013-04-15 14:51 飞鼠溪 阅读(122) 评论(0) 推荐(0) 编辑