C#, C♯, C#相談室 Part94

レス数が900を超えています。1000を超えると表示できなくなるよ。
1デフォルトの名無しさん (ワッチョイ 935f-5Uxj)
垢版 |
2019/03/20(水) 18:57:36.47ID:ZZcTomnN0
!extend:checked:vvvvv:1000:512
■Visual Studio 2017 Community(無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/

■コードを貼る場合はこちら
http://ideone.com/

■前スレ
C#, C♯, C#相談室 Part93
http://mevius.5ch.net/test/read.cgi/tech/1492818720/

■次スレは>>970が建てる事。
建てられない場合は他を指定する事。
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
2021/10/22(金) 07:26:26.05ID:fpd3u34i0
括弧の中はコーラスかな
2021/10/22(金) 08:40:47.54ID:sYXSwuhS0
うだつってどこで売ってるの?
2021/10/22(金) 08:47:26.63ID:oVr78/SWM
>>831
普通のファイルのシークしながらの読み書きなら困る、はわかるんだけど、
それを一般化して、位置の概念のあるストリームで「普通」成り立つべき性質なのかよくわからない。
後学のために、いい例を教えてくれないか?
2021/10/22(金) 11:28:17.10ID:J+jDEcsH0
そもそもファイルストリームって(単一ファイルでは)双方向通信に使えるものじゃないから、
全二重という思い込みがよく分からないし
ワッチョイ的にデッドロックの意味勘違いしてた人っぽいし
全般的に用語の使い方がいい加減な人なんだろうなと思った
2021/10/22(金) 11:54:11.71ID:V0jARYip0
ファイルストリームって、追記モードで複数オープンされたファイル扱えないのか?
2021/10/22(金) 12:08:46.46ID:V0jARYip0
双方向のストリームなら、非排他的にアクセスされると困るという意見ならまあ理解はできる

排他的とか、自分以外のアクセスの話で、自分が全2重でアクセスできるかどうかとは無関係だがな
2021/10/22(金) 12:47:13.67ID:V0jARYip0
>>837
なるほど
全2重/半2重から排他/非排他の話になってるのは
話をずらそうとしてるんじゃなくて自分の中でもちゃんと区別できてないのか
2021/10/24(日) 03:48:37.41ID:Ebis89vva
>>837
俺が用語を正確に使ってないのでなく君に読解力がないだけじゃないのかな。

俺はファイルストリームは「半二重」だと言ってるんだよ。わざわざ括弧を付けて。
括弧を付けているのは全二重/半二重という用語は普通はストリームを対象にした
用語ではないからだ。
2021/10/24(日) 03:54:05.25ID:Ebis89vva
というか、「必要のない制約をわざわざ課す馬鹿っているんですか?」
っていうのが俺の主張の本質なんだけど、その辺も含めて文脈読めないにも程があるね。
2021/10/24(日) 06:21:08.23ID:4lHZz/Ub0
ああ、ほんとに双方向か片方向かと全/半2重の区別がついてないのね
2021/10/24(日) 10:19:03.31ID:BecJ+B2qa
全二重と半二重は鉄道で例えれば単線と複線の違いだよ。
RS485通信は半二重通信になるけどな。
2021/10/24(日) 12:15:38.06ID:kMf1w+hQa
>>843
またそれか。
片方向の文脈であれば全二重/半二重の区別は意味を持たない。
区別がついてないのは君じゃないの。マジで大丈夫か
2021/10/24(日) 12:24:26.91ID:kMf1w+hQa
だいたい双方向とか片方向とかいう話がどっから出てくるのw
意味がわからないよ

だから、必要もないのにr/wを排他的にする制約を課す馬鹿っているの?って話をしてるんだけど
2021/10/24(日) 12:31:01.70ID:kMf1w+hQa
次の展開予想すると、>>843みたいな人はたぶんそれでも片方向/双方向の違いに固執して
「片方向っていうのは片方だけが能動的にr/wすることをいうんだ」みたいな話になるんだろうねw

だから、だから何だよw
この文脈でそれ重要ですか?
2021/10/24(日) 15:32:33.07ID:4lHZz/Ub0
ああ、排他的ってのは自分自身からのリードとライトについて言っているのか
つまりお前の中では、全2重=非排他的 半2重=排他的 ってことなのね
で、片方向っていうのは片方だけが能動的にr/wすること だと

まあこれからも独自路線を行ってくれ。できればひっそりと
2021/10/24(日) 16:20:34.86ID:qOtMLiXha
ファイルストリームに半二重ないやろ?
途中で方向変わるのか?
全二重もないし。
2021/10/24(日) 16:40:45.22ID:ju8sH4Lg0
誰かこいつらの脳幹をdisconnectしてくれや
2021/10/24(日) 17:30:30.88ID:nuxNtcA20
NO CARRIER
2021/10/24(日) 20:36:34.43ID:cIXJUcvh0
>>847
既に定義された用語と違う独自用語使うならスレ外でやれ
デッドロックがどういう状態かの理解はできたか?
2021/10/25(月) 08:10:52.85ID:H+hg1O8s0
海外の機関車のハンドルとかについている装置
運転手が突発性の病気で倒れたりして手を離すと緊急停止する
2021/10/25(月) 09:43:28.98ID:GqjTTybe0
つまんね・・・
2021/10/25(月) 15:32:53.27ID:zsG9VPuLM
鎌池和馬の言の葉、我が身に降臨す。
2021/10/25(月) 19:07:57.24ID:d/hZB5lcM
>>853
それは Dead man's switch
2021/10/25(月) 19:38:31.87ID:L4R2KWZAa
>>852
いい機会だから言っておくか。
それは違う。

言葉というのは置かれた文脈によって意味が変わる、
という中学生でも知っている事実を君が知らないだけじゃないの?

だいたい文脈無視して意味不明な用語法の問題にすり替えて、
それを指摘されてもまだ「おかしいのはお前だ」と言い張る神経が俺には理解できない。
858デフォルトの名無しさん (アウアウウー Sa45-iXiw)
垢版 |
2021/10/25(月) 19:42:31.57ID:L4R2KWZAa
あと>>833ねw
2021/10/25(月) 20:07:49.31ID:7NDplVqs0
どうでもいいけど技術的なやり取りをするのに言葉の意味を明確に定義せずにするのは困難しか産まないと思うけどな。

独自用語でもちゃんと定義したらよろしい。

定義なしに文脈によって意味が変わるなんて言ってるのは技術者失格。
2021/10/25(月) 22:36:46.73ID:zQaJMovpM
えっちょっと待って
IT用語としての「デッドロック」なんて基本情報レベルな単語だしこの板に書き込むような人なら常識だと思ってたんだけど
>>801なんかはてっきりギャグとして書いてるか、さもなくば
デッドロックって言葉の意味を知らない人を馬鹿にするためにわざと書いてると思ってたんだが
ひょっとして本当に知らなかったの??

でもって無知を恥じるでもなく「読解力」とか言い出して責任転嫁してるの?
「ボクチャンわるくないもん、読み手が馬鹿なのが悪いんだもん」って言ったところで
馬鹿をさらしてる人が言い出したところで説得力ないと思うよ
そのうえさらに自分の語用・論理展開が支離滅裂なのを棚に上げて「文脈」とか言い出して正当化してもなあ
>それを指摘されてもまだ「おかしいのはお前だ」と言い張る神経が俺には理解できない。
その言葉を反芻すべきなのは>>857だと思うよ
2021/10/25(月) 22:56:47.64ID:myY8ExBF0
文脈無視して意味不明な用語法ってか
さすが自分の常識は絶対だって自信がある人はちがうな

で、技術論を人格攻撃で逃げようってか
相手してられん
2021/10/25(月) 23:12:43.16ID:c86hiX/I0
デッドロックマンティウンティウンwww
2021/10/26(火) 01:05:29.94ID:tLsOhANt0
お前らそろそろ落ち着きませんか?
c#10の話でもしようぜ(錯乱)
2021/10/26(火) 01:13:31.28ID:qCIhQ9NK0
特定の会社なりグループなりの小さなコミュニティ内で本来の定義とは異なる意味で用語が使われることはある
そのコミュニティ内で齟齬なく意思疎通取れてるならまぁ問題ない
ただその輪から出たら本来の意味でのみ使用すべきだし誤解を招きそうなら補足を入れるなりすればいい

定義にシビアなことが求められる技術者がこういう場で文脈によって変わるとか言っちゃうのはどうかと思う
こういう場というのが便所の落書きじゃん、というなら否定はできんがw
2021/10/26(火) 01:23:54.20ID:ZoC9kawY0
みんなわかっているくせにいつまでも指摘しないのな。

デッドロックは暗礁でも座礁でもない。壊れた錠前のことだ。

https://www.nhk.or.jp/bunken/summary/kotoba/gimon/170.html

IT 用語では、並列処理時に異なるプロセスが、互いが専有するリソースの解放を求めて睨み合い、うごけなくなってしまうリソース競合のことだ。それ以外の意味はない。

一般用語に行き詰まりという意味があったとして、IT 用語としてリソース競合という意味のズバリの状況定義があるのだから、IT に正しい理解がある人間なら、行き詰まりという一般的な意味でこの語を IT 関連の説明に使うことは絶対に避ける。他人に誤解させるし、伝わらないし、紛らわしいのが目に見えているから。

色々な意味で、非常に恥ずかしい部類の誤用。強弁もたいがいにしておくべき。
2021/10/26(火) 01:34:11.65ID:ZoC9kawY0
✕専有→○占有
2021/10/26(火) 02:21:50.02ID:UIBkHtwX0
誰かこいつらをガイジ小学校に叩き込んで来てくれや
2021/10/26(火) 07:39:00.23ID:+xnJ+mOr0
>>865
壊れた錠前とかそういう比喩でなく、
膠着状態を指す英単語だよ
a situation in which a disagreement cannot be settled.
2021/10/26(火) 09:42:42.07ID:Lw2w7Q/c0
そもそもdead rockなんて勘違いしてる奴いないじゃん
座礁って言葉使ってる奴はいるけど身動き取れなくなると説明付き
リソース競合ってまた狭い意味だし座礁と同じで狭い意味でデッドロックを使ってる
デッドロック(IT限定)でもプロセス競合のほうがまだまし
しかも競合それ自体には行き詰まりの意味はない
あくまでも競合による行き詰まりがデッドロック
2021/10/26(火) 11:09:30.80ID:UqMMY6BB0
座礁がdead rockからきた勘違い
deadlockは身動き取れなくなるという意味はない

語源はdead+lockだから「壊れた錠前」であってるけど
今はその意味で使われることはない
2021/10/26(火) 11:53:16.92ID:lkW9PATM0
>>870
座礁もdeadlockで間違いないし、rockとの勘違いでもない
ただ英単語としての意味とIT用語としての意味を混同していたことが問題なだけ
2021/10/26(火) 12:21:43.14ID:NjF3KidV0
まだやってんのかい。
お前ら、仲いいな。
2021/10/26(火) 12:43:29.66ID:yz4Jvoxzr
たんなるウェイトとデッドロックの区別がついてないバカがうだうだ言ってるだけ
2021/10/26(火) 12:57:34.74ID:ht6Potv3d
>>865
壊れた錠前では無いよ。
行き詰まりそのもの。
リソースのlock自体、錠前のことではない。
名詞としてのlockは、カギで開け閉めするものに限られるので、リソースなどを指してない。輪留めとか、にっちもさっちもいかない状態とかそういうのを指す。

動詞としては、固定するだよ。
リソースを取得するのにカギが必要なら錠前だろうけど、カギは要らない。
2021/10/26(火) 13:49:40.40ID:UqMMY6BB0
>>871
Pope Francis urges end to migrant boat deadlock
https://www.bbc.co.uk/news/world-europe-46777844

↑この船は座礁してるのかな?
2021/10/26(火) 14:28:12.06ID:lkW9PATM0
多義語を知らない>>875
辞書引くだけで良いのに引けないんだね
2021/10/26(火) 18:40:21.38ID:UqMMY6BB0
>>876
座礁って書いてある辞書教えて
そしたら納得するよ
2021/10/26(火) 19:44:50.29ID:uR+ZT8QXD
>>877
納得はいらんけど、deadlockの自動詞、他動詞の意味調べてみ
2021/10/26(火) 20:18:17.44ID:YaaA9sXD0
>>878
低頓する、低頓させる、「交渉は賃金問題で行き詰まった」、旺文社シニア英和辞典
行き詰まる、行き詰まらせる、低頓する、低頓させる、研究社リーダーズ英和辞典
2021/10/26(火) 20:48:48.62ID:eY0tVbdGa
さすがに「言葉の意味は文脈に依存する」ってことを知らない人がこれだけ多いと日本の将来心配になるねw

この業界でデッドロックと言えば普通は非同期処理の文脈におけるデッドロックのことを指す、
これは最初から言っているように間違いない。

ただ必ずそうとは限らないと言ってるだけ。
イキってる皆さんがどう思おうが自由だけど、メソッドが制御を返さない状態のことをその原因を問わずに
「デッドロック」と呼ぶ用法は普通に使われてる。
2021/10/26(火) 20:52:50.16ID:eY0tVbdGa
そもそもデッドロックの意味とか、片方向と双方向の違いがどうのとか、そんなのどーでもいいわw
誰がそんな話してるんだよw

俺は時々ニュース系の板とかでネトウヨ馬鹿にして楽しませてもらってるけど、
この追いつめられると別の矮小な問題にすり替えて誤魔化して逃げるやり方って
連中そのものだねw
2021/10/26(火) 21:39:59.59ID:5YjTtZfR0
>メソッドが制御を返さない状態のことをその原因を問わずに「デッドロック」と呼ぶ
まあ、たんなるロック待ちをデッドロックというやつはたまにはいるけどな
あきらかに間違ってるわけで、それが普通とかもう話にならん

>追いつめられると別の矮小な問題にすり替えて誤魔化して逃げる
まさに今のお前だな
2021/10/26(火) 21:43:21.08ID:tLsOhANt0
あーあ
ネトウヨとか言い出しちゃったよ
2021/10/26(火) 22:01:25.78ID:UqMMY6BB0
>>878
名詞が動詞化したものだから意味に違いはないよ
自動詞は「デッドロックになる」こと
他動詞は「デッドロックをもたらす」こと

デッドロックとは「相対する2つの勢力が拮抗して事態が進展しない状態」
DBMSのデッドロックも非同期処理のデッドロックも状況が特化してるだけで意味は同じ

座礁は船と岩礁の力が拮抗してるってことなら
その辺に転がってる石ころもdead rockだね
2021/10/26(火) 22:18:18.56ID:+xnJ+mOr0
>>884
deadlockの言う座礁する、座礁させるは日本語では比喩的な使われ方をする座礁だよ
交渉が座礁するとか交渉が暗礁に乗り上げるって意味での座礁
だから名詞じゃなく自(他)動詞
2021/10/26(火) 22:27:49.42ID:+xnJ+mOr0
つまりデッドロックマンは何もかも間違ってると言いたい
2021/10/27(水) 00:14:30.81ID:un5zQ+BD0
>>885
「deadlockの言う座礁する、座礁させる」って何? どこから出てきたの?
deadlockの言う?

交渉が座礁するとは日本語では言わない
交渉が暗礁に乗り上げたとしてもそれがデッドロックとは限らない
単なる待ち状態をデットロックと言ってるのと同じレベル
2021/10/27(水) 08:01:39.38ID:hvQWVHhPD
>>887
少なくとも英辞郎には暗礁に乗り上げるって意味が載ってる
意味として膠着状態を指す慣用句としての暗礁に乗り上げるが使われてる
2021/10/27(水) 08:07:10.23ID:gYjFdZWj0
Rock Is Dead !
2021/10/27(水) 08:22:12.88ID:thwndR3Q0
Rock is not dead.
891デフォルトの名無しさん (ワッチョイ fd5f-iXiw)
垢版 |
2021/10/27(水) 10:24:03.90ID:t2iD5tO80
>そもそもデッドロックの意味とか、片方向と双方向の違いがどうのとか、そんなのどーでもいいわw
>誰がそんな話してるんだよw

>追いつめられると別の矮小な問題にすり替えて誤魔化して逃げるやり方って連中そのものだねw

まさにこれ
話を逸らすついでにスレ流して汚点を忘れさせようとしてるのが観える
2021/10/27(水) 18:07:43.86ID:2zkjN6asH
>>891
東大話法、てのが大昔流行っていましたね
2021/10/29(金) 08:02:34.91ID:4uk/ll0/0
連中…「組織」の者かな?
2021/11/02(火) 21:51:33.93ID:4DiwsCtO0
ニコニコ弾幕ツールを作りたくてプログラミングとC#を初めて触ったのですが
なにか参考になる動画や書籍資料等ないでしょうか?
簡単なメニュー程度なら作れるようになったんですがどうすれば弾幕打てるツールになるのか全く分かりません。
弾幕ツールソースとかでググってもそれっぽいのが全く出ず…
超初心者スレでも聞いたのですが回答もらえなかったのでこちらで…
2021/11/02(火) 22:21:39.61ID:SO0TQkZV0
>>894
ぐぐるんなら、「ニコニコ動画 コメント api」とかじゃね?
ちょっと古いけど
ttps://qiita.com/tor4kichi/items/74939b49954d3e72d789
こんな感じで以前は出来ていたようです
が、今春にコメントサーバーがリニューアルされているようなので、おそらくは上記の記事そのままではなくなっていると思います
https://blog.nicovideo.jp/niconews/141893.html

ブラウザコントロール上でアレコレさせるのとどっちが楽かは知らん

いずれにしても、言語そのものの知識以外の、httpだとかニコニコの仕様そのものだとかの知識の方が必要かと思います
896デフォルトの名無しさん (ワッチョイ 8bbb-fCIK)
垢版 |
2021/11/02(火) 22:37:12.36ID:crJtQlzP0
勉強のためにやりたいのなら別だけど・・・・
自分で使いたいとかそういう目的なら、ほとんど完成品みたいなものが既にある
https://www.nuget.org/packages/NicoNico.Net/
2021/11/02(火) 23:03:38.72ID:4DiwsCtO0
>>895-896
回答ありがとうございます
C#の知識だけじゃ実現できないのですね(;´Д`)
C#の他にJavascriptとかCのAPIですか…3,4年はかかりそうですね…
やったことが無駄にならないことが分かったので頑張ります
2021/11/03(水) 03:43:52.91ID:Di9oQY4e0
日にどれくらい時間かけるかにもよるけど早い人なら無学から始めても1ヶ月かからんやろ
すでにほとんど完成品といえるようなパッケージがあるならなれてる人なら1日かからず完成する

始めて開発というものをするにあたって半年以上かかりそうなもんはモチベーション続かんから普通はおすすめできない
もしこのコメントツールで年単位で掛かりそうだと感じたならもっと規模の小さい、長くても1ヶ月くらいで完成させられるかな?って想像できるようなものから始めたほうがいいと思うよ
2021/11/03(水) 08:25:21.70ID:MLVf2VPVM
>>894
10/20にニコニコ動画関連総合ツールスレで質問して回答もらえなかった人?
そこまでできるようにはなったんだ
ニコ動の弾幕なのか、ニコ生の弾幕なのかわからないけど
・ネットアクセスのやり方(httpclientかなんか)
・WebSocketの使い方(ニコ生のみ)
・jsonの知識
・非同期の使い方
はわかってないとできないと思う
以下を見て理解できるまでがんばって。以下のニコ生・ニコ動の説明は古くてそのまま使っても動きません。
ブラウザーのディペロッパーツールで解析してね。
ニコ生
https://qiita.com/tor4kichi/items/5c438aa11fea5422103b
https://qiita.com/tor4kichi/items/4df5b11ec564bb8f8d16
ニコ動
https://qiita.com/tor4kichi/items/91550a71119f3878bfba
2021/11/03(水) 11:12:45.02ID:s4xVDTJC0
>>897
Web関連は基本人間が理解出来る文字列でやり取りするから比較的難易度低い方
C#で作るならCの知識が必要になる場面なんて全くないはず
Html、Css、JavaScriptの知識はどの言語で開発するにしても多少必要にはなってくるがそんな難しくはない
2021/11/03(水) 16:24:16.20ID:XrFTraKdM
>>897
あなたが作りたいツールを作るにも10年ぐらい前ならもっと簡単な知識でつくれたんだけど、Flashからhtml5になった頃から技術的なレベルが高くなったのも一因
ニコ動、ニコ生にしても以下のステップを1つづつ目標にして。

1.ニコ動かニコ生のURLを入力してそのページの内容を取得して表示なり取得確認する
2.そのページから必要な情報を選択して取得する
3.ニコ生の場合は、その情報からwebsocketに接続して各種情報を取得
4.ニコ動の場合は、その情報からコメント情報を取得する

たぶんこの辺までできれば次どうすればいいかはわかると思うよ
2021/11/03(水) 20:51:20.05ID:b4M0oSaD0
今時はIEコンポーネントブラウザを使わないからだよ
ニコニコの場合は
(1)Javascriptでブラウザの拡張機能を書く
(2)Pythonでダウンローダーや巡回、予約
で大半だよね、C#の出番はあまりないん
903デフォルトの名無しさん (ワッチョイ 515f-vonH)
垢版 |
2021/11/05(金) 19:37:49.44ID:1GMX4TDW0
API使わずにスクレイピングっていいのか?
2021/11/05(金) 21:29:05.81ID:U9pi1OEC0
非公式API使って制限回避してもいいぞ
2021/11/05(金) 23:15:31.65ID:/IlkeVzp0
各サイトのルールは、robots.txt を見ればよい

そこに、スクレイピングできる間隔などが書いてある
906デフォルトの名無しさん (ササクッテロ Sp79-y4Tz)
垢版 |
2021/11/08(月) 19:23:08.09ID:jl5nUU4op
SQLのパラメータって使いまわせなかったっけ?

例えば下みたいなSQLがあったとして
string sql = "UPDATE HOGE_TBL SET HOGE = :hoge WHERE HOGE = :hoge ";

パラメータが下1つだけだったら更新件数0件で上手く動かない…
cmd.Parameters.Add(new OracleParameter(":hoge", "huga"));

Javaだと上手く動くけどC#は明示的に分けないとダメな感じ?
2021/11/08(月) 19:27:49.03ID:ZmPcj5XX0
hugaじゃなくてfugaじゃないかな
2021/11/08(月) 19:47:26.23ID:eIDHMWNda
BindByName
909デフォルトの名無しさん (ササクッテロ Sp79-y4Tz)
垢版 |
2021/11/09(火) 12:25:10.04ID:+zMu32a8p
>>908
dクス
910デフォルトの名無しさん (ガックシ 0671-09aj)
垢版 |
2021/11/12(金) 14:47:41.59ID:LR2kPQ3V6
最近c言語習い始めた初心者なんですがwhile()のカッコ内の条件式に論理演算子を使うことはできますか
もしできるならif文の時のように入力すればいいのでしょうか
2021/11/12(金) 14:56:20.52ID:9PEUH50B0
>>910
ここはC#の相談室なんだが・・・
まあ、ifの書き方と同じで良いですよ。
2021/11/13(土) 11:48:36.10ID:WnzBfGlt0
C#10で文字列補間が大幅に最適化されたってことらしいけど、
stringオンリーの4個以内(Concatの最大引数以内)以外は$"{}"で繋げていった方がむしろパフォーマンス良くなるって認識でOK?
2021/11/13(土) 12:46:38.78ID:+IhS2fUi0
ベンチマーク取れば?
914デフォルトの名無しさん (ワッチョイ 7501-D258)
垢版 |
2021/11/17(水) 00:43:34.98ID:qSiAIVdk0
わけあってVisual Studioをインストールできない環境があるのですが、
その環境で
Windows標準のC#コンパイラ(C:\Windows\WinSxS配下のcsc.exe)

Visual Studio Code
でC#コンパイル環境を作成したいのですができますか?

以上、よろしくお願いいたします
2021/11/17(水) 02:16:31.13ID:+JwFzM8Ra
できるけど君の場合どうせNuGetで積むんじゃね
916デフォルトの名無しさん (ワッチョイ 7501-D258)
垢版 |
2021/11/17(水) 18:51:18.08ID:qSiAIVdk0
>>915
積むかどうかは分からないですね
私は超能力者ではないので
917デフォルトの名無しさん (ワッチョイ 7501-09aj)
垢版 |
2021/11/17(水) 20:50:08.18ID:iuNg9UQr0
ビスマルク「愚者は経験に学び、 賢者は歴史に学ぶ」
2021/11/17(水) 22:01:06.93ID:GLXZB85w0
そもそもコンパイル環境なら、VS Codeすらいらないんじゃ
2021/11/17(水) 22:23:38.77ID:oaCBMm/O0
VSはダメでVSCodeはインストールできるんだ
よくわからない環境だな
920デフォルトの名無しさん (ワッチョイ 4de6-wt4Y)
垢版 |
2021/11/17(水) 22:48:30.86ID:OY6bKJls0
普通の会社で使えるのは2017までなんだよな
2021/11/17(水) 23:11:54.33ID:SfknQ7Tq0
うち2022買ったで
922デフォルトの名無しさん (ワッチョイ 7501-09aj)
垢版 |
2021/11/17(水) 23:14:07.67ID:iuNg9UQr0
まだ2021年なのに?
2021/11/18(木) 09:00:28.34ID:+Wtl3GaA0
ジャップには分からんだろうが世界的には9月からはもう2022年だぞ
2021/11/18(木) 21:37:43.70ID:cf0G7PVa0
じゃあ日本は4月からもう2022年になってるのか
2021/11/19(金) 01:11:50.72ID:4qGzfQ8F0
コマンドが格納されたListを順番にサーバへ送信し、
1が返ってきたら次のコマンド送信、1以外かTimeoutしたら即中断みたいな処理を
ractiveでサクッと書けますか?

var cmdList=new List<string>{ cmd1, cmd2, ... };

cmdList
 .ToObservable()
 .TimeOut( ・・・ )
 .SendCommand()
 .WaitResponse()
 .PostRecv(1だったら次のコマンド送信、1以外やタイムアウトなら処理中止);

みたいな感じで。。
2021/11/20(土) 22:43:08.40ID:F7Qzv69PM
cmdList
.ForEach(x => { if(x.SendAsync(cts.Token).Result == 1 ) throw new Exception() });
2021/11/20(土) 22:58:08.09ID:YK5Xmj5SM
var results = await cmdList
.ToAsyncEnumerble()
.SlectAwait(async (c) => await c.SendAsync(cts.Token))
.TakeWhileAwait(async (r) => r == 1)
ToArrayAsync();
2021/11/21(日) 00:02:36.10ID:Z3Hc+Mmaa
タイムアウトで値や例外が返ってくるタイプだったらいいけど
時間経過で勝手にタイムアウト判定しろよってタイプだと詰みそう
2021/11/21(日) 00:41:13.81ID:7ZBVrJXA0
ReactiveExtentions(System.Reactive名前空間 ver5.0)を使ってます。
自分なりに書いてみましたがこのライブラリの使い方がよくわかってない状態です。
(疑問点をコメントに書きました。分かる方教えてください)

IDisposable d = cmdList
 .ToObservable()
 .Timeout( TimeSpan.FromSeconds( 3000 ) )
 .Select( cmd =>
 {
  var res = this.SendCommand( cmd ) // 自作のコマンド送信関数;
  return res;
 } )
 .Where( res => res == 1 )
 .Subscribe(
  res => /* ここで次のコマンド送信を行う書き方が分からない*/ res.ToString(),
  ex => Debug.WriteLine( ex.Message /* Timeout発生時 */ ),
  ()=> Debug.WriteLine( "Complete" /* 全ての送信完了?それとも1つだけ送信完了? */ )
);

>>927
やはりToAsyncEnumerbleからアプローチするべきなんですかね。。
2021/11/21(日) 00:46:46.14ID:7ZBVrJXA0
Timeout関数の中身は
TimeSpan.FromMilliseconds( 3000 ) // 3秒
の間違いでした
2021/11/21(日) 10:42:16.16ID:XHu2qeE/M
Rxは監視を行うもの
時系列に沿って要素が流れてくる時に使うもの
なのである要素が流れてきた時に次の要素なんてのはまだ無い
要素が最初から揃ってるListから始めるからわからなくなる
最初から揃ってるなら普通にLinqかforeachを使う
Listでなくストリームならこれでおk

var d = CommandStream
.Select(c => Send(c))
.Timeout(t)
.TakeWhile(r => r == 1)
.Subscribe();
2021/12/10(金) 11:57:57.31ID:ceXBGTs50
次元の違う配列ではArray.Copy出来ないのでしょうか。

例)
var foo = new int[4];
var bar = new int[3, 4];
ArrayCopy(foo,0,bar,0,4); // 例外発生 "The specified arrays must have the same number of dimensions."

1個づつコピーするしかないのでしょうか?
2021/12/10(金) 12:19:49.36ID:D7YZScOh0
プリミティブ数値型の配列ならBuffer.BlockCopyできるけど
まあ多次元配列なんて肩身が狭いもんだから仕方ないね
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況