[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 10/07 16:29 / Filesize : 229 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Objective-C



1 名前:デフォルトの名無しさん mailto:sage [05/01/29 16:18:12 ]
ほんとプログラマにとってはMacって
本当に興味が無いOSだよねw

Macでの標準的な言語であるObjective Cのスレすら無いし。
過去にはあったんだろうけど。

321 名前:デフォルトの名無しさん mailto:sage [2005/12/12(月) 16:04:48 ]
仮想PCの上で動かしたらハードウェアもOKそうだね

322 名前:デフォルトの名無しさん mailto:sage [2005/12/31(土) 17:19:12 ]
Cocoa でゲームつくったらフレームレートがめちゃ低いので
「やっぱ Objective-C は遅いのか、動的バインドだし」とか思ってたが、
ObjectAlloc を使えるようになってただ一つのメモリリークが発見でき、
そこを直したらフレームレートが超改善した。

この場を借りて Obj-C の神様に懺悔しまつ。

323 名前:デフォルトの名無しさん mailto:sage [2006/01/20(金) 02:12:00 ]
ン年ぶりにユニマガ買ってここにたどり着きました。
appleがdocumentをpdfで提供してるとは知らなんだ
このスレとあわせてこれから読みます

324 名前:デフォルトの名無しさん [2006/01/21(土) 00:44:31 ]
デスクトップの Mac が出るまでに ObjC 勉強しようとした。
Windows しかないので Cygwin の Gcc でお勉強。
…リンクができねぇ。
Cygwin Gcc では ObjC は含まれていないんだと。
cygwin.com/faq/faq.programming.html#faq.programming.objective-c

VMware 上の Linux で出なおします。

325 名前:デフォルトの名無しさん mailto:sage [2006/01/21(土) 04:32:10 ]
>324
Mingwだっけ?
あっちはどう?
GNUstepのWin版に使われてる位だから動くと思うんだけど。

326 名前:デフォルトの名無しさん mailto:sage [2006/01/21(土) 08:39:29 ]
GNUstepのWin版インストーラ使えばMingwも入って楽だよ。
まぁLinuxでProjectCenterとかGorm使った方が楽しそうだけど。

327 名前:デフォルトの名無しさん mailto:sage [2006/01/21(土) 10:16:01 ]
>>320
当時でもドライバ類は困ったチャンだったから今のPCじゃ全滅でしょう。

>>321
VirtualPC上で問題なく動いてます。速度もそれなり。
NEXTSTEP/OPENSTEPなんて今のWindowsのUIから比べるとかなりクソですが。

328 名前:324 mailto:sage [2006/01/21(土) 12:38:00 ]
>325
>326

情報ありがd。
GNUStep でも同様のエラーでますた。

原因は gcc のオプション -lobjc を最後にしていなかったから… orz
オプションの類は前置きする癖がついていて、何度も何度も
gcc -o Sample.exe -lobjc Sample.m
としてました。gcc の使い方から出直しです。

-lobjc 最後にしたら Cygwin でもコンパイル・実行できました。
C をポインタで挫折して Java に逃げ込んだ私ですが、地道に出直します。

ありがとうございました。

329 名前:デフォルトの名無しさん [2006/01/24(火) 09:49:19 ]
Objective-Cの特徴を一言で言うとどんなだろうな。
C++のような複雑怪奇流動的なものじゃなければ
いいんだが。



330 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 11:31:48 ]
>>329
>Objective-Cの特徴を一言で言うと

(Smalltalk + C) / 2

331 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 11:38:14 ]
よく言われるのはこんな感じ。
ObjectiveC,smalltalk メッセージ指向
C++,Java クラス指向

メッセージ指向って何さ、メソッドとどう違うのさという意見もあり、
smalltalk派とC++派の喧嘩(という程でもないが)の種になったりする。

この辺も参考に
ttp://homepage.mac.com/mkino2/oop/messaging.html
ttp://sumim.no-ip.com:8080/wiki/725

332 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 13:40:08 ]
>>331
それは動的、静的と言い換えてもよくない?


333 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 18:13:14 ]
Cなんだけど、スクリプト言語っぽいユルさがある。
ただメモリは解放してあげないといけない
…のが良かったり、悪かったり。

カリカリには行けないけど、気はそんなに緩められず。
こんなんで良いのか?と思いつつ、楽に作れて動いてる。

とても微妙な感じのする言語ですね。


334 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 18:17:14 ]
C から ObjC のメソッドを呼び出すのはどうやるの?

335 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 19:43:35 ]
>>332
言葉遊びかもしれんが、動的、静的というより、
オブジェクトの結合が粗か密かという方が適切な気がする。
言語研究者や言語オタならうまく説明できるんだろうなあ。

336 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 19:47:19 ]
>>334
Appleの実装ならobjc_msgSend()とか

337 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 20:08:06 ]
>>336
ありがとう。Mac じゃないけど、gcc なんでちょっと試してみます。

338 名前:332 mailto:sage [2006/01/24(火) 20:14:43 ]
>>335
それはやっぱりバインディングが静的か動的かと言ってるように
見えるんだけど、違うのかな。
「オブジェクト同士の結合が疎 」
⇔ 「Cocoa BindingとかDuck Typingが可能」
⇔ 「動的要素大」と。

339 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 22:34:15 ]
オブジェクト同士がメッセージでやりとりしてる感じの言語を作ろう!結果動的に。
みたいな動機の部分と実際の実装(?)ってことじゃないのかな?



340 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 22:47:58 ]
>>339
まあそういうことだあね。どっちに注目するかの差でしかない。

動的ってのは結構なメリットだと思うんだけど、
なんでメッセージ指向は流行らないんだろうな。

341 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 23:35:14 ]
流行らない理由
・遅い(或は、見るからに遅そう)
・メモリ喰い(ランタイム情報いっぱいくっつける)
・実行時バグは見つけ辛い(静的ならコンパイル時に弾いてくれるのに)
・静的マニアが多い(こいつらが一番問題)

Objective-C はクロージャを捨てたのが間違いだよなぁ。
動的言語としては中途半端な感じ。

342 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 23:41:26 ]
>>295
亀レスだが、NSXML が使えるんじゃないかな...

343 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 23:44:15 ]
>>341
>・実行時バグは見つけ辛い(静的ならコンパイル時に弾いてくれるのに)
OS X 標準だとクラッシュしたらスタックトレースが出て、
どのメソッドのどの行で死んだかすぐわかるのでそれほど問題ではないっす。


344 名前:デフォルトの名無しさん mailto:sage [2006/01/25(水) 00:27:04 ]
テストが完全ならね。

345 名前:デフォルトの名無しさん mailto:sage [2006/01/25(水) 01:15:14 ]
>>338
重要なのは言語ではない。その背景にある概念である。 by グラディ・ブーチ

実装面での話に置き換えようとした場合(きっとそれはたいてい成功しますが)、
もとの言葉の意図するところとは違ったところに着地するような気がします。

とりあえず、メッセージングについて知りたければ、その発案者であるケイの
書いたものを読むのがいいと思います。

lists.squeakfoundation.org/pipermail/squeak-dev/1998-October/017019.html
www.purl.org/stefan_ram/pub/doc_kay_oop_en
gagne.homedns.org/~tgagne/contrib/EarlyHistoryST.html

それでもなお、そんなの「動的」でいいじゃん、と 332 が思うのならそれまでで。

346 名前:デフォルトの名無しさん mailto:sage [2006/01/25(水) 01:22:54 ]
メッセージが静的に定義出来るなら、オブジェクト間の関係で例外を考えなくてもいいのになぁ。

347 名前:デフォルトの名無しさん mailto:sage [2006/01/25(水) 10:45:09 ]
>>341
インスタンス変数の動的追加が出来れば、クロージャじゃなくてもいい。


348 名前:デフォルトの名無しさん mailto:sage [2006/01/26(木) 01:10:35 ]
>>347
メソッドの動的追加も出来なきゃ嫌なんだが。あと、関数リテラルも。

349 名前:デフォルトの名無しさん mailto:sage [2006/01/26(木) 10:10:38 ]
>>348
ランタイム関数で出来なかったっけ?



350 名前:デフォルトの名無しさん mailto:sage [2006/01/27(金) 07:48:00 ]
インテル版の Mac では Objective-C ではなく C++ ベースの開発環境になるみたいでつね。
とても悲しい。  Objective-C サポートしてくれ〜>インテル


351 名前:デフォルトの名無しさん mailto:sage [2006/01/27(金) 09:13:12 ]
>>350
日本語おかしいけど、どうせ ICC の話だろ。もう一回寝ろ。

352 名前:デフォルトの名無しさん mailto:sage [2006/01/28(土) 04:56:07 ]
>>349
出来るなら、マジやり方教えて欲しい。

353 名前:デフォルトの名無しさん mailto:sage [2006/01/28(土) 16:47:37 ]
>>350
本当に???
過去の資産とか、どうするつもりなんだろう1?

354 名前:デフォルトの名無しさん mailto:sage [2006/01/28(土) 17:29:17 ]
>>353
騙されてんじゃねーよ。ちょっとは自分で調べれ。

355 名前:デフォルトの名無しさん mailto:sage [2006/01/28(土) 20:12:10 ]
メソッドの動的追加は class_addMethods で出来そうだな。

356 名前:デフォルトの名無しさん [2006/01/28(土) 23:46:24 ]
>>354
非存在の証明は原理的に不可能
ソフトウエア開発者の常識

357 名前:デフォルトの名無しさん mailto:sage [2006/01/28(土) 23:48:10 ]
ゴバクかな...?

358 名前:デフォルトの名無しさん mailto:sage [2006/01/29(日) 19:10:20 ]
vorbisのコメントの読み出しは出来たけど書き込みってどうやったらいい?

359 名前:358 mailto:sage [2006/01/29(日) 19:34:51 ]
ごめん・・・誤爆した・・・



360 名前:デフォルトの名無しさん [2006/01/31(火) 01:22:05 ]
Objective-C で構文解析するときってどのライブラリ/ツールつかうんでしょ?
ぐぐったら GSANTRL なるものが出てきたんだけど、情報が少ないのとサンプルが全く無いのでどうしたもんかなと。

361 名前:デフォルトの名無しさん mailto:sage [2006/01/31(火) 04:55:54 ]
C との違いがほとんどないので、自前で C に落とすプリプロセッサを書いて
生成されたコードをほかのツールにかけるとか?駄目か。

362 名前:デフォルトの名無しさん mailto:sage [2006/01/31(火) 05:07:18 ]
GSANTLR ね。使った事は無いけど...

363 名前:デフォルトの名無しさん mailto:sage [2006/01/31(火) 16:20:09 ]
GNU GLOBAL で使えるようにしてくれ>>だれか

364 名前:デフォルトの名無しさん mailto:sage [2006/02/01(水) 00:26:28 ]
>361

アドバイスありがと。

> C との違いがほとんどないので、
=> Objective-C は C との違いがほとんど無いので、
==> Objective-C は C のコードも利用できるので

> 自前で C に落とすプリプロセッサを書いて
=> BNF などの構文定義から 自前で C に落とすプリプロセッサを書いて
==> BNF などの構文定義から、構文解析の対象を入力として適当な構造体を作る
   C のコードを、生成するプリプロセッサを自前で書いて

Objective-C は C のコードも利用できるので、BNF などの構文定義から、
構文解析の対象を入力として適当な構造体を作る C のコードを、
生成するプリプロセッサを自前で書いて、生成されたコードをほかの
ツールにかけるとか?

すまん、がんばったけどアドバイスを理解できんです。なんとなくだけど、
 Objective-C は C のコードを利用できるから、lex/yacc なり flex/bison なりで
 生成した C コードを Objective-C から利用すればいいんじゃん?
ってことですかね?

365 名前:デフォルトの名無しさん mailto:sage [2006/02/01(水) 00:43:58 ]
>>361 は "Objective-C の構文" の解析の話をしてるんじゃないの?
俺もそういう質問だと思ってたけど。勘違いだったらスマソ。

Objective-C を使って構文解析するという話だったら、lex/yacc で
良いと思うよ。

366 名前:360 mailto:sage [2006/02/01(水) 01:04:39 ]
>365

すんません。言葉足らずでした。
"Objective-C を使って構文解析する" という話でした。
ありがとう。

>361
質問悪かったです。すまぬ。


367 名前:361 mailto:sage [2006/02/01(水) 02:32:50 ]
こちらこそ質問を誤解してすまそ


368 名前:デフォルトの名無しさん [2006/02/01(水) 03:43:04 ]
こちらこそただ見てるだけですまそ

369 名前:デフォルトの名無しさん [2006/02/09(木) 12:45:22 ]
生きててスマソ
しかも遅レスで超スマソ



370 名前:デフォルトの名無しさん [2006/02/10(金) 13:32:31 ]
Objective-Cって、例外(try-catch)がつかえないんだっけ?
クロージャはなくてもなんとかするけど、例外がないとちょっとつらい。

371 名前:デフォルトの名無しさん mailto:sage [2006/02/10(金) 14:16:13 ]
素の Objective-C にはないよ。

NextSTEP 系列なら NS_DURING / NS_HANDLER / NS_ENDHANDLER
Panther 以降の Cocoa なら @try / @catch (/ @finally)

372 名前:デフォルトの名無しさん mailto:sage [2006/02/10(金) 15:14:07 ]
#すれ違いスマン
クロージャってCommandパターンのことか?

373 名前:デフォルトの名無しさん mailto:sage [2006/02/10(金) 17:17:40 ]
Objective-C は Apple のものじゃないの?
Stepstone -> NeXT -> Apple って権利が移ってると思ってたんだけど。

Apple が拡張した Objective-C のみが Objective-C って名乗れるのでは?

374 名前:デフォルトの名無しさん mailto:sage [2006/02/10(金) 17:22:53 ]
>>371
さんくす。@try/@catch/@finallyか。あたらなディレクティブが増えてるんだな。
これって、Foundationでも使われているの?
つまりPanthor以降のCocoaでは@try/@catch/@finallyをふんだんに使っているのか気になる。
例外処理をつかう・使わないではプログラミングスタイルが大きく違うので。

>>372
違う。イメージはなんとなくわからなくもないが。
クロージャは手続きと、それがアクセス可能な変数をいっしょにしたもの。
クロージャを使うと、手続き(処理)をデータとして扱う事ができ、メソッドの引数に渡したりできる。
つまり引数として整数や文字列を渡すのと同じ感覚で手続き(処理)を渡す事が出来る。
LispやSchemeでは関数がクロージャ。RubyやSmalltalkではブロックがクロージャ。

コマンドパターンも処理をオブジェクトとするための手法ではあるんだけど、外の変数にアクセスできないため、クロージャとはふつういわない。
つか、クロージャは言語の機能、コマンドパターンはデザインパターンのひとつ。比較する対象が違う。

375 名前:デフォルトの名無しさん mailto:sage [2006/02/10(金) 23:09:46 ]
>>374
Smalltalkのブロックは最初びっくらこいた。
if文がメッセージで、その引数がブロックなんだよな確か。
あそこまでドラスティックにはやりたかないけど。

376 名前:デフォルトの名無しさん mailto:sage [2006/02/11(土) 00:47:21 ]
クロージャがあればインスタンス毎に少しだけ振る舞いを変えたい時に
便利なのにね。button を押した時の callback を button 毎に設定する
時とか、イテレーションの処理本体を引数で渡したりとか。

377 名前:デフォルトの名無しさん mailto:sage [2006/02/11(土) 00:51:08 ]
trueオブジェクトにifTrueのメッセージを送って引数のブロックを実行する、じゃなかったっけ?
数字なんかのリテラルにもメッセージをおくって計算させてたと思う。

個人的にネタで「オブジェクト指向ならこれくらいしないとなぁ」って言ってたレベルより徹底してる

378 名前:デフォルトの名無しさん mailto:sage [2006/02/11(土) 01:33:25 ]
例外って@NSException??

379 名前:デフォルトの名無しさん mailto:sage [2006/02/11(土) 23:57:20 ]
>>376
後者は兎も角、前者は Cocoa ではアレだな、
ボタンのメソッドでアクションを登録するというよりは、
Interface Builder でボタンからコントローラにコネクションを張る
(どのコントローラのどのメソッドを実行するか指定する)ので...

まあクロージャあったほうが面白いけど。



380 名前:デフォルトの名無しさん mailto:sage [2006/02/12(日) 07:18:26 ]
>>379
同意。376はVisualBasicが頭にあるんじゃないかな。

381 名前:デフォルトの名無しさん mailto:sage [2006/02/13(月) 14:41:38 ]
>>374
@try関係は言語に組み込まれただけで、NS_DURINGとかのマクロと互換性あり。
Cocoaのほとんどのメソッドが例外を投げない状況に変化は無い。

>>372
クロージャは、下記が判り易いと思う。
ttp://kmaebashi.com/programmer/devlang/object.html


382 名前:デフォルトの名無しさん mailto:sage [2006/02/13(月) 20:15:15 ]
油断してたら Dylan のスレが落ちてた…

383 名前:デフォルトの名無しさん mailto:sage [2006/02/14(火) 01:24:04 ]
Javaの無名クラスはクロージャの一種ですか

384 名前:デフォルトの名無しさん mailto:sage [2006/02/14(火) 06:54:50 ]
>>383
違う。無名クラスからは生成された箇所のローカル変数にアクセスできない。
finalつけた変数にはアクセスできるらしいけど。

385 名前:デフォルトの名無しさん mailto:sage [2006/02/14(火) 12:03:58 ]
それ、定数だからな。
そこそこ便利ではあるけど、クロージャではないね。
もっとも、クロージャのある言語にも無名クラスは欲しい(できれば
レキシカル環境へのアクセスのあるクロージャとしての構成で)。


386 名前:デフォルトの名無しさん mailto:sage [2006/02/14(火) 23:30:07 ]
>>385
クロージャとは別に無名クラスが欲しい場面を教えてくれ。
参考にする。

387 名前:デフォルトの名無しさん mailto:sage [2006/02/15(水) 06:05:48 ]
ごめん、最近はJava書いてないからすぐには思いあたらないの。



388 名前:デフォルトの名無しさん mailto:sage [2006/02/15(水) 06:28:42 ]
Javaには毎日触っているが、クロージャのある言語に触る機会がない。
Schemeでも勉強してみようかな。

389 名前:デフォルトの名無しさん mailto:sage [2006/02/15(水) 08:14:43 ]
Groovyでいいんでね?それかJavaScript



390 名前:デフォルトの名無しさん mailto:sage [2006/02/16(木) 02:22:04 ]
>>382
なつかしいね。まだ開発やってんのかな?

391 名前:デフォルトの名無しさん mailto:sage [2006/02/16(木) 13:49:29 ]
>390
まだ続いてるよ(笑)
Gwydion Dylanは今はgccのバージョンアップ絡み?で停滞気味かね?
OpenDylan(Functional Developerのオープン版)に主力メンバーが注力してる感じ。
が、svcとか見る人でないと進展はないようにしか見えない罠(w

392 名前:デフォルトの名無しさん mailto:sage [2006/02/16(木) 21:21:16 ]
>>382
どんな言語なの?
つか、このすれとはどういう関係で?

393 名前:デフォルトの名無しさん mailto:sage [2006/02/16(木) 21:33:41 ]
S式を使わない LISP …といったふぜいの言語。
Apple つながりでね。

394 名前:デフォルトの名無しさん mailto:sage [2006/02/17(金) 15:09:24 ]
www.na.rim.or.jp/~kusumoto/dylan.html
ずいぶんと古い文書が見つかった

395 名前:デフォルトの名無しさん mailto:sage [2006/02/18(土) 00:15:18 ]
今なら
www.opendylan.org/
こことか、
monday.sourceforge.net/wiki/
ここらから眺めていくといいんじゃないだろか?



396 名前:デフォルトの名無しさん mailto:sage [2006/02/18(土) 02:38:25 ]
dylan 刷れ立てる?利用者いないだろうけど。

397 名前:デフォルトの名無しさん mailto:sage [2006/02/18(土) 09:54:50 ]
必要ないだろ。
それより、るびまの他言語訪問、今回はDylanらしい。

398 名前:デフォルトの名無しさん mailto:sage [2006/02/22(水) 14:04:44 ]
Objective-Cから.NET弄れれば面白いのに

399 名前:デフォルトの名無しさん mailto:sage [2006/02/22(水) 16:42:21 ]
>>396
前あったが落ちた。



400 名前:デフォルトの名無しさん mailto:sage [2006/02/22(水) 23:27:34 ]
>>398
何が面白いのか理解出来んが、MONO に call-in するインターフェイスを
書けば良いんじゃないの。

401 名前:デフォルトの名無しさん mailto:とりあえずageときますよ [2006/02/26(日) 19:25:31 ]
[[myFriend girlfiend] retain];

402 名前:デフォルトの名無しさん mailto:sage [2006/02/26(日) 19:48:55 ]
test

403 名前:デフォルトの名無しさん mailto:sage [2006/02/27(月) 03:09:51 ]
>>401
girlfriend を autorelease して渡す
奇特な友人は居ないと思われ...

404 名前:デフォルトの名無しさん mailto:sage [2006/02/27(月) 10:46:54 ]
retainして他に渡すのも変じゃないか?

405 名前:デフォルトの名無しさん mailto:sage [2006/02/27(月) 19:06:40 ]
>>403
ちょっと彼女に会わせてあげる、みたいなノリじゃね?

406 名前:デフォルトの名無しさん mailto:sage [2006/02/27(月) 20:52:00 ]
myGirlfriend = [[myFriend girlFriend] retain];
[myFriend release];
myFriend = nil;

407 名前:デフォルトの名無しさん mailto:sage [2006/02/27(月) 21:14:14 ]
/* myFriendの復讐 */

- (nil)release
{
 [>>406 dealloc];
 [super release];
}

408 名前:デフォルトの名無しさん mailto:sage [2006/03/03(金) 05:32:07 ]
girlFriend: が nil を返さない保証はどこにあるのさ?

409 名前:デフォルトの名無しさん mailto:sage [2006/03/04(土) 00:41:33 ]
メソッドそのものが無かったりして…



410 名前:デフォルトの名無しさん mailto:sage [2006/03/08(水) 18:51:45 ]
ないものは作る
@implementation girlFriend
後はまかせた

411 名前:デフォルトの名無しさん mailto:sage [2006/03/08(水) 19:28:07 ]
いや、girlFriendはインスタンス変数だと思うが。
クラスはGirlですか

412 名前:デフォルトの名無しさん mailto:sage [2006/03/08(水) 19:38:36 ]
@implementation Human (GirlFriendInformalProtocol)

413 名前:デフォルトの名無しさん mailto:sage [2006/03/08(水) 21:09:57 ]
- (id)initWithBoyFriend:(Human *)aBoyFriend
{
 self = [super init];
 if(!self) return nil;
 if( [aBoyFriend height] < 170.0 ) return nil;

 boyFriend = [aBoyFriend retain];
 return self;
}

414 名前:デフォルトの名無しさん [2006/03/09(木) 20:17:14 ]
はじめてCocoaでSocketのプログラムを書いてみました

asyncSocket
smallsocket
等ライブラリがあるようですが、どれを使っても同じ問題が発生しています

問題
Javaで書かれたサーバーに接続し、Objective-Cクライアント側のsocketとstreamをcloseしてもサーバー側では分からないのです。
他の言語でクライアント側を書いた時は、クライアント側でcloseすると、サーバー側で検知されました。
これってOSXでは通常の動作でしょうか?どのようにしたら、サーバー側で検知できるでしょうか。
サーバー側のsocketに何かプログラムが必要でしょうか。
現在は、javaサーバー側のsocketでタイムアウトが発生するまで検知されません。

どなたか教えて頂けませんか。




415 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 22:36:32 ]
いわゆるひとつのマルチってやつですか

416 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 11:06:52 ]
そもそも、クライアント側のクローズをサーバで検出する事が間違い。
LANの外に出るとほとんど機能しない。
クライアントが先に送信バイト数を送るか、最後に終了コードを送って、サーバ側に切断させるのが正解。
またサーバ側は、タイムアウトでも切断するようにする。

417 名前:デフォルトの名無しさん [2006/03/10(金) 13:01:38 ]
最後に終了コードを送るようにしていますが

closeが検出されないことが驚きでした

このような動作は Objective-C+OSX だけではないでしょうか

Realbasicでも検出されました
javaやWINDOWS環境でも検出されます

何か間違っているでしょうか








418 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 17:15:46 ]
何で通信してるか知らないけど、明示的にclose送ってみたら?
その後閉じる。

419 名前:デフォルトの名無しさん [2006/03/10(金) 17:31:33 ]
終了コードを送る場合 文字コードとかあるじゃないですか

なので とりあえず close だけで 閉じても サーバー側ではわからないのですね

正常にクライアントソケットを閉じてるのですからサーバーソケット側で
他の言語環境と同じように検知したいのですが

こういう動作はObjective-C+OSXが初めてです

なぜ検知をしたいかというと不正なクライアントを識別する機能と関係しています

もし検知されないとしたら Objective-C+OSX のクライアントから 適当なサーバーに繰り返し接続して
放置しておくだけで DoS攻撃ができちゃいますよ




420 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 19:18:15 ]
言語のせいなのか?

421 名前:デフォルトの名無しさん mailto:sage [2006/03/10(金) 19:25:46 ]
ほほうCocoaアプリのWebブラウザは全てDoS攻撃可能ですか
帰れ馬鹿。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<229KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef