1 / 47
文档名称:

【IT书籍】Perl and UNIX Network Programming.ppt

格式:ppt   页数:47页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

【IT书籍】Perl and UNIX Network Programming.ppt

上传人:wiztre 2013/11/5 文件大小:0 KB

下载得到文件列表

【IT书籍】Perl and UNIX Network Programming.ppt

文档介绍

文档介绍:Perl and work Programming
Naoya Ito
naoya at
Why work programming?
httpd is boring
Some recent web application have special feature working.
Comet
Socket API of ActionScript 3
mini server for development, like Catalyst's
Agenda
work programming basics with Perl
I/O multiplexing
Perl libraries for work programming
work programming basics with Perl
BSD Socket API with C
int main (void) {
int listenfd, connfd;
struct sockaddr_in servaddr;
char buf[1024];
listenfd = socket(, SOCK_STREAM, 0);
bzero(&servaddr, sizeof(servaddr));
= ;
= htonl(INADDR_ANY);
= htons(9999);
bind(listenfd, (struct sockaddr *) &servaddr, sizeof(servaddr));
listen(listenfd, 5);
for (;;) {
connfd = accept(listenfd, NULL, NULL) ;
while (read(connfd, buf, sizeof(buf)) > 0) {
write(connfd, buf, strlen(buf));
}
close(connfd);
}
}
BSD Socket API
socket()
struct sockaddr_in
bind()
listen()
accept()
read() / write()
close()
work Programming
TMTOWTDI
less code
CPAN
performance is good enough
right design >> ... >> language advantage
BSD Socket API with Perl
#!/usr/local/bin/perl
use strict;
use warnings;
use Socket;
socket LISTEN_SOCK, , SOCK_STREAM, scalar getprotobyname('tcp');
bind LISTEN_SOCK, pack_sockaddr_in(9999, INADDR_ANY);
listen LISTEN_SOCK, SOMAXCONN;
while (1) {
accept CONN_SOCK, LISTEN_SOCK;
while (sysread(CONN_SOCK, my $buffer, 1024)) {
syswrite CONN_SOCK, $buffer;
}
close CONN_SOCK;
}
use IO::Socket
#!/usr/local/bin/perl
use strict;
use warnings;
use IO::Socket;
my $server = IO::Socket::INET->new(
Listen => 20,
LocalPort => 9999,
Reuse => 1,
) or die $!;
while (1) {
my $client = $server->accept;
while ($client->sysread(my $buffer, 1024)) {
$client->syswrite($buffer);
}
$client->close;
}
$server->close;
blocking work I/O
while (1) {
my $client = $server->accept;
while ($client->sysread(my $buffer, 1024)) { # block
$client->syswrite($buffer);
}
$c

最近更新

二零二五年度智慧办公租赁合同书 9页

二零二五年度旅游客运公司个人司机聘用及培训.. 8页

二零二五年度文化创意产业展会策划及会展服务.. 8页

二零二五年度撤销调解的矿产资源开采合同 9页

二零二五年度房地产营销中介合同模板集 8页

二零二五年度房产中介服务合同范本(含法律适.. 9页

二零二五年度婚庆公司竞业禁止服务合同 8页

二零二五年度城市排水系统劳务合同 9页

二零二五年度国际贷款债务催收代理服务协议 8页

二零二五年度商业秘密技术交易中介服务协议 9页

二零二五年度发起人合作协议:公司股权分配与.. 7页

二零二五年度农村离婚协议中农村土地经营权收.. 8页

二零二五年度农村房屋买卖合同模板:农村房屋.. 8页

二零二五年度农村土地转让私人农业综合服务平.. 9页

二零二五年度农村公路养护与安全防护合同 9页

二零二五年度农业机械购置补贴项目实施进度协.. 9页

二零二五年度兼职校医专项医疗服务合同 8页

二零二五年度关于双方约定协议书:金融科技项.. 7页

二零二五年度公司财产抵押借款合同书 8页

二零二五年度公司个人车辆租赁服务协议书 8页

二零二五年度全新工厂智能化仓储股份合作协议.. 9页

二零二五年度光伏电站光伏发电购售电与技术创.. 9页

二零二五年度健身工作室合伙人健身俱乐部品牌.. 8页

二零二五年度停车场租赁与电动汽车充电设施安.. 8页

二零二五年度保险市场推广合作协议 9页

二零二五年度供暖供气设施施工安全与质量协议.. 9页

二零二五年度体育产业实习生实习与赛事运营合.. 8页

二零二五年度会展活动临时工雇佣合同 8页

酒店经理聘用合同书范本(2024版) 13页

2025年度除草剂应用技术与销售大全 4页