[Armadillo:03018] Re: アルマジロ -220 について
Hirofumi Momose
email@hidden
2008年 6月 18日 (水) 12:40:05 JST
例がありました。
http://www.ne.jp/asahi/hishidama/home/tech/lang/socket.html
O_NONBLOCKにすると、read()/write()なども非同期になりますので、その点は対
応が必要です。connect後に同期式に戻しても良いかもしれません。
あとよくやるのはwrite()なんかで、必ず一度に全データが書き込まれると思っ
ているかと思いますが、保証はありません。書き込み長をとって、引数のデータ
長と比較し、必要であればオフセットして再トライが必要です。
また、read()はwrite()した単位で出てくるわけではないです。これも初心者が
はまります。
--
Hirofumi Momose <email@hidden>
On Wed, 18 Jun 2008 10:04:24 +0900 (JST)
國井 <email@hidden> wrote:
> 國井です
> 早々のアドバイスありがとうございます。
> 非同期 非ブロッキング 方法があることまでわかりましたが
> 、
> この方法の具体的ソース例ありましたお教えください。
> いまひとつ素人なので、実際の例ががありましたら紹介いただ
> けませんか?
> 以上
>
>
> --- Hirofumi Momose <email@hidden> wrote:
>
> > 百瀬と申します。
> >
> > やりかた1
> >
> >
> connect()など、ブロッキングするシステムコールの前でalarm()
> をセットする。
> > シグナルハンドラのセットは必要だったような気がします。
> そうしないとBroken
> > Pipeで終了してしまうような。
> >
> > やりかた2
> >
> > ソケットを非同期モードにして、select()する。
> >
> > 簡単なのはやりかた1です。
> >
> > --
> > Hirofumi Momose <email@hidden>
> >
> >
> > On Tue, 17 Jun 2008 20:00:38 +0900 (JST)
> > 國井 <email@hidden> wrote:
> >
> > > 國井と申します。
> > > ご存知の方見えましたらお願いします。
> > > 現在、ソケット通信を行っています。
> > >
> > ソケット作成して、コネクト(connect)するとき、相手がい
> な
> > >
> > いとタイムアウト時間が長い為、処理上不具合がある為、短
> 縮
> > > したい。
> > >
> > コネクトしてからタイムアウトする時間を3秒程度にする方
> 法
> > > ご存知でいたら、お教えください。
> > > 以上
> > >
> > > --------------------------------------
> > > GANBARE! NIPPON! Chance to win 50,000 Yahoo!
> > Points!
> > > http://pr.mail.yahoo.co.jp/ganbare-nippon/
> > > _______________________________________________
> > > armadillo mailing list
> > > email@hidden
> > >
> >
> http://lists.atmark-techno.com/mailman/listinfo/armadillo
> > >
> >
> >
> >
> > _______________________________________________
> > armadillo mailing list
> > email@hidden
> >
> http://lists.atmark-techno.com/mailman/listinfo/armadillo
> >
>
>
> --------------------------------------
> GANBARE! NIPPON! Chance to win 50,000 Yahoo! Points!
> http://pr.mail.yahoo.co.jp/ganbare-nippon/
> _______________________________________________
> armadillo mailing list
> email@hidden
> http://lists.atmark-techno.com/mailman/listinfo/armadillo
>
armadillo メーリングリストの案内