ポジローぽけっと

昨日より今日、今日より明日を信じて、トライトライ

第十八回スパルタンプログラミング

何がしたいか?何が問題か?を意識して変なとこでぐだぐだ考えないこと! 30分悩んで分からなかったら、早めにヘルプを出す。

deliのカレーを食べた後に孤独のグルメを初めて見た週。いっのがっしらー、ごろー♩

武蔵野園行きたい。年末に東京戻ったときに行ってみよう。

いっしーの調子が悪い週、ま、それよりもサクレ食べ過ぎ禁止なんだが。。

僕は僕で集中力にかけていて、ドラゴンボール読み過ぎー!といっても、コード整理してyaccに戻ろうというところまできたのだ!

やりたいこと

1スレッド1コネクトのスレッドをまず完成させたい。

やったこと

  • ソケットの集合を構造体で扱えるようにした。
  • ソケットの初期化部分をマクロで行えるようにした。(「モダンC言語プログラミング」で学んだことの取り入れ)
  • コード整理し、pthread_create, pthread_detachでスレッドに対応。スレッド間のデータアクセスの競合はまだ考慮してない。
  • 1スレッド複数コネクトのスレッドできた。accept後のソケットは管理をまとめ、リスニングソケットは特別扱いにした方がきれいな気がする。今は特別扱いせずに管理。
  • yacc & lexの復習

lex&yaccプログラミング (NUTSHELL HANDBOOKS)

lex&yaccプログラミング (NUTSHELL HANDBOOKS)

UNIX yaccとlexの使い方 (UNIXリテラシー・シリーズ)

UNIX yaccとlexの使い方 (UNIXリテラシー・シリーズ)

どっちもよく読む。

yacc lex情報収集

きちんと書きたいのと考えるのがしんどくなってしまったので、情報収集作業へ。

メモ

  • selectの第一引数について
  • リスニングソケットとその他をまとめて扱っているが、性質が異なるので分けた方が良い気がしてきた。ただ直近の対応で無くてもいい気がする。
  • スレッド間共通で扱うものは、現状自前のSocketCBのメンバのみ。