「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■関連スレ
C#, C♯, C#相談室 Part93
https://mevius.5ch.net/test/read.cgi/tech/1492818720/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part137
https://mevius.5ch.net/test/read.cgi/tech/1523004019/
■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/
■情報源
https://msdn.microsoft.com/ja-jp/library/gg145045.aspx
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index
https://msdn.microsoft.com/en-us/library/gg145045.aspx
http://referencesource.microsoft.com/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
ふらっと C#,C♯,C#(初心者用) Part138
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 369a-msj4)
2018/06/05(火) 19:32:42.28ID:70UTtyrn0687デフォルトの名無しさん (ワッチョイ 7983-Y8gp)
2018/07/17(火) 23:41:42.83ID:ofYg0nnt0 >>674
10万行の間違いだろ。
10万行の間違いだろ。
688デフォルトの名無しさん (ワッチョイ 2a7f-L1xz)
2018/07/17(火) 23:47:31.06ID:WCI1fetR0 >>672
独習C#新版が終わったらレポートよろしくね
独習C#新版が終わったらレポートよろしくね
690デフォルトの名無しさん (ワッチョイ b69f-rNvr)
2018/07/18(水) 00:21:32.09ID:WfV71rrt0 dotnet aspnet-codegeneratorってwindowsでしかうごかんの?
691デフォルトの名無しさん (ワッチョイ 6681-+P7Y)
2018/07/18(水) 02:04:04.67ID:ohWLsVDp0 >>688
やっぱあるよね
感覚的にはeffectiveに書いてある内容がとりあえず理解できて実践しだしたら中級者なイメージ
上級者っていうとmvpクラスと同等の知識レベルとかになるのかなぁ
mvpもいろいろあって基準としては曖昧かもしれんが
やっぱあるよね
感覚的にはeffectiveに書いてある内容がとりあえず理解できて実践しだしたら中級者なイメージ
上級者っていうとmvpクラスと同等の知識レベルとかになるのかなぁ
mvpもいろいろあって基準としては曖昧かもしれんが
692デフォルトの名無しさん (ワッチョイ 6681-+P7Y)
2018/07/18(水) 02:09:13.63ID:ohWLsVDp0 1000行なんて時には1日で書く程度のアプリ10本作ったところで…
だからって10万行のアプリなんて、それほんとに10万行必要だったの?プラグイン1個居れたら数万行不要になるんじゃない?って気もする
そもそも行数で語る時点でおかしい訳だけど
プログラム未経験は別として経験者なら一言語の中級者になるのに3年もかけてたら上級者になる頃にはその言語消えてんじゃね?って思う
だからって10万行のアプリなんて、それほんとに10万行必要だったの?プラグイン1個居れたら数万行不要になるんじゃない?って気もする
そもそも行数で語る時点でおかしい訳だけど
プログラム未経験は別として経験者なら一言語の中級者になるのに3年もかけてたら上級者になる頃にはその言語消えてんじゃね?って思う
693デフォルトの名無しさん (スップ Sdea-Y7YF)
2018/07/18(水) 07:35:29.71ID:604NWUGLd 一時的にスリープのように任意のスレッドの処理を停止させて
別スレッドがある処理をしたら停止スレッドが動き始めるような形を作りたいです
waitforsingleobject以外に実現方法ありますか
別スレッドがある処理をしたら停止スレッドが動き始めるような形を作りたいです
waitforsingleobject以外に実現方法ありますか
694デフォルトの名無しさん (スッップ Sd0a-zHc1)
2018/07/18(水) 07:37:13.37ID:gGGdDmmqd >>693
なぜそんなことしたいの?
なぜそんなことしたいの?
695デフォルトの名無しさん (スップ Sdea-Y7YF)
2018/07/18(水) 07:40:12.26ID:604NWUGLd >>694
Aスレッド、Bスレッドがあって
Aスレッドはたまっているリクエストを非同期で投げ続けています
リクエストは一つずつ送らないといけない制約があるため
その応答が来るまでAスレッドを停止させたいです
応答というのがBスレッドの処理です
Aスレッド、Bスレッドがあって
Aスレッドはたまっているリクエストを非同期で投げ続けています
リクエストは一つずつ送らないといけない制約があるため
その応答が来るまでAスレッドを停止させたいです
応答というのがBスレッドの処理です
696デフォルトの名無しさん (スッップ Sd0a-zHc1)
2018/07/18(水) 07:51:29.32ID:gGGdDmmqd >>695
普通にasync/awaitじゃだめなの?
普通にasync/awaitじゃだめなの?
697デフォルトの名無しさん (ワッチョイ 6a11-w0lO)
2018/07/18(水) 09:20:45.30ID:W2UhJLr+0 待機するAスレッドがUIスレッドとかいう状態でもなければ
それこそ関数直接コールでも良さそうなもんだけど
それこそ関数直接コールでも良さそうなもんだけど
698デフォルトの名無しさん (ササクッテロル Spbd-p+0f)
2018/07/18(水) 10:14:35.95ID:IWAo5nUlp じゃあセマホ使えよ。
699デフォルトの名無しさん (アウアウエー Sa52-4Kub)
2018/07/18(水) 12:17:19.01ID:TKyRL/+ma A案:リクエストのキューを投げる側ではなく受ける側に持たせる
B案:リクエストを投げるメソッドのデリゲートのキューをリクエストを受ける側に持たせる
B案:リクエストを投げるメソッドのデリゲートのキューをリクエストを受ける側に持たせる
700デフォルトの名無しさん (ワッチョイ 8954-nsuX)
2018/07/18(水) 13:53:18.95ID:imuZ+lX20 会社クラスを作りインナークラスで部署クラスを作ったのですが、インナークラスの使い方として間違っていないでしょうか
なんかMS意図と違う使い方をしてる気がしておりまして
なんかMS意図と違う使い方をしてる気がしておりまして
701デフォルトの名無しさん (ワンミングク MM7a-ZTCE)
2018/07/18(水) 14:21:30.22ID:JHZwBCBgM 間違いです
702デフォルトの名無しさん (ワッチョイ 7983-Y8gp)
2018/07/18(水) 14:39:45.10ID:zONoZYnW0 IT業界は部署ごと社外に出向させられるとか日常茶飯事ですからね。
703デフォルトの名無しさん (ワッチョイ 6dbb-Qvid)
2018/07/18(水) 19:00:56.71ID:9N0yBnKk0 listviewを使って画像をドラッグした位置に挿入できるようなものを作りましたが、サムネイル表示(ViewプロパティをView.LargeIconに設定)だと移動後に一番後ろに来てしまいます
、どうすれば自由に画像を入れ替えれるのでしょうか?
、どうすれば自由に画像を入れ替えれるのでしょうか?
704デフォルトの名無しさん (ワッチョイ 1181-L1xz)
2018/07/18(水) 19:50:12.60ID:yFSY1wbO0705デフォルトの名無しさん (ワッチョイ 3dd2-9zcR)
2018/07/18(水) 21:41:28.47ID:ojmeEx4e0 >>704
内容にもよるんだろうけれど、きちんと動くプログラムを10本完成させたっていうのであれば、それなりに評価してよいと思う。
内容にもよるんだろうけれど、きちんと動くプログラムを10本完成させたっていうのであれば、それなりに評価してよいと思う。
706デフォルトの名無しさん (ワッチョイ 66c9-LQig)
2018/07/18(水) 21:49:23.42ID:GTM6kR3M0 仕事の山越えたからと社内文章読んでたら我が社のコーディング規約にvarとLINQ禁止とデカデカと書いてあってて笑ったwww
707デフォルトの名無しさん (ワッチョイ 6917-LQig)
2018/07/18(水) 21:53:50.99ID:iepCQJFn0 就職ガチャ失敗おめでとうございます
708デフォルトの名無しさん (スププ Sd0a-C8NM)
2018/07/18(水) 22:21:17.43ID:ptS24Bkdd >>706
LINQ禁止ってラムダ式使ったらだめってこと?
LINQ禁止ってラムダ式使ったらだめってこと?
709デフォルトの名無しさん (ワッチョイ 3633-CB8p)
2018/07/18(水) 22:30:15.87ID:MKYFu03e0 varだめってリテラシーならラムダもダメだろうね
710デフォルトの名無しさん (アウアウウー Sa21-Y8gp)
2018/07/18(水) 22:41:34.30ID:62X+9Moaa 短いコードのアプリでもちゃんと一般人の使用に耐えうるようになってるならいいだろう
機能的には十分でも無秩序にボタンが並んでるアプリは見ててつらい
機能的には十分でも無秩序にボタンが並んでるアプリは見ててつらい
711デフォルトの名無しさん (アウアウカー Sa55-eTBu)
2018/07/18(水) 23:09:23.95ID:/cNHsX3ta コントロールそこそこおいたまともなアプリなら1000行じゃおさまらんやろ
712デフォルトの名無しさん (ワッチョイ 6ad2-zHc1)
2018/07/18(水) 23:29:19.34ID:p8keSf810 >>706
C#の公式コーディング規約に真っ向から対立www
C#の公式コーディング規約に真っ向から対立www
713デフォルトの名無しさん (ワッチョイ 5e3b-C8NM)
2018/07/18(水) 23:39:58.45ID:rt2OOdjJ0 ラムダ式禁止とかC#使う価値半減だな
714デフォルトの名無しさん (ワントンキン MM7a-ZTCE)
2018/07/18(水) 23:43:15.56ID:dMzTHkZAM λ縛りはBダッシュ縛りマリオぐらいキツイ
715デフォルトの名無しさん (ワッチョイ 69d2-w0lO)
2018/07/18(水) 23:46:14.58ID:L7ofGWBt0 h
716デフォルトの名無しさん (ワッチョイ ffe8-H0hI)
2018/07/19(木) 00:18:15.44ID:mgU85F4C0 varってスコープが決まってたりよく使うもんだと思ってるんだけど
違うん?
あとコンパイル時に推論されるから実行速度には影響ないって考えていいの?
違うん?
あとコンパイル時に推論されるから実行速度には影響ないって考えていいの?
717デフォルトの名無しさん (ワッチョイ 9fd2-4ryk)
2018/07/19(木) 00:29:07.38ID:iwebbGhU0 >>716
明示的に型を示しても実行速度は変わりません
明示的に型を示しても実行速度は変わりません
718デフォルトの名無しさん (ワッチョイ ffe8-H0hI)
2018/07/19(木) 00:29:37.74ID:mgU85F4C0 >>717
ありがとうございます
ありがとうございます
719デフォルトの名無しさん (ワッチョイ ff8a-H0hI)
2018/07/19(木) 00:34:23.22ID:4jMcHp760 var myTable = new Dictionary<string, string>();
myTable.Add("Hokkaido", "Sapporo");
myTable.Add("Iwate", "Morioka");
myTable.Add("Miyagi", "Sendai");
//*1
var b = myTable.ContainsKey("Iwate");
if (b == true)
{
//*2
var s = myTable["Iwate"];
MessageBox.Show(s);
}
Dictionaryから特定の要素を探して、あれば表示するんですが
この*1 *2 をLINQを使って1行にしたいんですが、どうすればいいですか?
myTable.Add("Hokkaido", "Sapporo");
myTable.Add("Iwate", "Morioka");
myTable.Add("Miyagi", "Sendai");
//*1
var b = myTable.ContainsKey("Iwate");
if (b == true)
{
//*2
var s = myTable["Iwate"];
MessageBox.Show(s);
}
Dictionaryから特定の要素を探して、あれば表示するんですが
この*1 *2 をLINQを使って1行にしたいんですが、どうすればいいですか?
720デフォルトの名無しさん (ワッチョイ f7d2-zNEp)
2018/07/19(木) 00:38:57.36ID:5TJBBc7u0 継承について
スーパークラスAに始まり
class B : A
class C : B
class D : C
となった場合、
Dクラス内でAやBのクラスのフィールドやメソッドをを使いたくなった場合には
それぞれをインスタンス化をすれば使えると思いますが、
継承されていない場合はどうすれば良いのですか?
例えば、
スーパークラスX
class Y : X
class Z : Y
とい場合、class Aのメソッドやフィールドを使いたくなったときは、
どうやってクラスAを持ってくるのでしょうか?
継承をしなくても、そのクラスのメソッドやフィールドを持ってくる方法はありますか?
スーパークラスAに始まり
class B : A
class C : B
class D : C
となった場合、
Dクラス内でAやBのクラスのフィールドやメソッドをを使いたくなった場合には
それぞれをインスタンス化をすれば使えると思いますが、
継承されていない場合はどうすれば良いのですか?
例えば、
スーパークラスX
class Y : X
class Z : Y
とい場合、class Aのメソッドやフィールドを使いたくなったときは、
どうやってクラスAを持ってくるのでしょうか?
継承をしなくても、そのクラスのメソッドやフィールドを持ってくる方法はありますか?
721デフォルトの名無しさん (アウアウウー Sadb-4GkJ)
2018/07/19(木) 00:46:06.47ID:9fGOJ2HHa コンポジション
ZのフィールドやプロパティにAをもたせるだけ
ZのフィールドやプロパティにAをもたせるだけ
722デフォルトの名無しさん (ワッチョイ ffd3-H0hI)
2018/07/19(木) 00:56:15.63ID:OslD0F820 >>719
LINQ は集合に対して使うものなので、その例だと必要ない
if (myTable.TryGetValue("Iwate", out var s))
{
MessageBox.Show(s);
}
対象が複数あるならこう
var list = new[] { "Hokkaido", "Iwate", "Tokyo" };
var q = list
.Where(x=> myTable.ContainsKey(x))
.Select(x=> myTable[x]);
foreach (var s2 in q)
{
MessageBox.Show(s2);
}
LINQ は集合に対して使うものなので、その例だと必要ない
if (myTable.TryGetValue("Iwate", out var s))
{
MessageBox.Show(s);
}
対象が複数あるならこう
var list = new[] { "Hokkaido", "Iwate", "Tokyo" };
var q = list
.Where(x=> myTable.ContainsKey(x))
.Select(x=> myTable[x]);
foreach (var s2 in q)
{
MessageBox.Show(s2);
}
723デフォルトの名無しさん (アウアウウー Sadb-glQ9)
2018/07/19(木) 01:05:12.94ID:EPnya5cJa >>719
LINQ全く関係ないけど比較的新しいC#ならこう書ける
if (myTable.TryGetValue("Iwate", out var s)) MessageBox.Show(s);
どうしても単一ステートメントにしたいなら
myTable.TryGetValue("Iwate", out var s) ? MessageBox.Show(s) : DialogResult.None; とか
(myTable.TryGetValue("Iwate", out var s) ? (Action<string>)(x => MessageBox.Show(x)) : (Action<string>)(_ => {}))();
とか書けなくはないけど俺ならこんなの書いてきやがったらコードレビューで突き返す
LINQ全く関係ないけど比較的新しいC#ならこう書ける
if (myTable.TryGetValue("Iwate", out var s)) MessageBox.Show(s);
どうしても単一ステートメントにしたいなら
myTable.TryGetValue("Iwate", out var s) ? MessageBox.Show(s) : DialogResult.None; とか
(myTable.TryGetValue("Iwate", out var s) ? (Action<string>)(x => MessageBox.Show(x)) : (Action<string>)(_ => {}))();
とか書けなくはないけど俺ならこんなの書いてきやがったらコードレビューで突き返す
724デフォルトの名無しさん (スプッッ Sd3f-/JJK)
2018/07/19(木) 07:22:53.40ID:Y653MTcJd >>696
awaitでは上手く実現できなさそうな構造でした
https://msdn.microsoft.com/ja-jp/library/system.threading.monitor(v=vs.110).aspx
monitorクラスを使って実現できそうだなとなりました
ただこれのシグナルを投げるpulseとpulseallの違いがよくわかりません
pulseは変数で渡したオブジェクトのスレッドを、pulseallは渡すオブジェクトとか関係なくwaitで止まってるすべてのスレッドを動かす?
awaitでは上手く実現できなさそうな構造でした
https://msdn.microsoft.com/ja-jp/library/system.threading.monitor(v=vs.110).aspx
monitorクラスを使って実現できそうだなとなりました
ただこれのシグナルを投げるpulseとpulseallの違いがよくわかりません
pulseは変数で渡したオブジェクトのスレッドを、pulseallは渡すオブジェクトとか関係なくwaitで止まってるすべてのスレッドを動かす?
725デフォルトの名無しさん (スッップ Sdbf-4ryk)
2018/07/19(木) 07:52:34.10ID:pmdFJ8GPd726デフォルトの名無しさん (アウアウウー Sadb-rtlg)
2018/07/19(木) 07:53:35.73ID:EPnya5cJa727デフォルトの名無しさん (ワッチョイ 9f9d-yhN8)
2018/07/19(木) 10:16:19.48ID:cAPUq0O30 Aそのものは非同期(バックグラウンド)で動く必要があるとして
そもそもBが非同期で動く必要性がわからん
かならず応答きてから次をよぶんだろ?
そもそもBが非同期で動く必要性がわからん
かならず応答きてから次をよぶんだろ?
728デフォルトの名無しさん (アウアウエー Sadf-0r7x)
2018/07/19(木) 11:39:51.48ID:wWZN809Va むしろ一番の疑問は、
>リクエストは一つずつ送らないといけない制約がある
のであれば、キューを持つべきなのはリクエストを送る側ではなく受ける側なんじゃないか、
なぜリクエストを送る側に受ける側の都合に合わせる負担をさせるのか、
ってことだと思うけど、まあ話が曖昧過ぎてよくわからんね。
>リクエストは一つずつ送らないといけない制約がある
のであれば、キューを持つべきなのはリクエストを送る側ではなく受ける側なんじゃないか、
なぜリクエストを送る側に受ける側の都合に合わせる負担をさせるのか、
ってことだと思うけど、まあ話が曖昧過ぎてよくわからんね。
729719 (ワッチョイ ff8a-H0hI)
2018/07/19(木) 12:02:04.85ID:4jMcHp760 >>722
自分のコードだと野暮ったくて古い感じがしたんですが
out var なるものを使ってすっきりさせるんですね
>>723
最近、ラムダ式やLINQを始めたんで↓みたいにメソッドチェーンで繋げたかったんですが
これだとやりすぎなんですねw
>> myTable.TryGetValue("Iwate", out var s) ? MessageBox.Show(s) : DialogResult.None; とか
>> (myTable.TryGetValue("Iwate", out var s) ? (Action<string>)(x => MessageBox.Show(x)) : (Action<string>)(_ => {}))();
>> とか書けなくはないけど俺ならこんなの書いてきやがったらコードレビューで突き返す
ありがとうございました
自分のコードだと野暮ったくて古い感じがしたんですが
out var なるものを使ってすっきりさせるんですね
>>723
最近、ラムダ式やLINQを始めたんで↓みたいにメソッドチェーンで繋げたかったんですが
これだとやりすぎなんですねw
>> myTable.TryGetValue("Iwate", out var s) ? MessageBox.Show(s) : DialogResult.None; とか
>> (myTable.TryGetValue("Iwate", out var s) ? (Action<string>)(x => MessageBox.Show(x)) : (Action<string>)(_ => {}))();
>> とか書けなくはないけど俺ならこんなの書いてきやがったらコードレビューで突き返す
ありがとうございました
730デフォルトの名無しさん (スプッッ Sd3f-FUqr)
2018/07/19(木) 12:23:58.43ID:apArmWopd 見やすくしたり行数減らす為の機能なのに一文に無理やり詰めたら見づらいだろうしな
LINQ使わなくても
;で終わらせた文を一列にずっと書き続けてたらなんだこいつってなるだろうし
LINQ使わなくても
;で終わらせた文を一列にずっと書き続けてたらなんだこいつってなるだろうし
731デフォルトの名無しさん (ブーイモ MM7b-klHS)
2018/07/19(木) 12:45:19.73ID:7c8TqsUTM MQ使えよ
732デフォルトの名無しさん (オッペケ Sr4b-Kbv3)
2018/07/19(木) 13:14:15.48ID:kD3lyTPJr varのメリットってなに?
733デフォルトの名無しさん (スフッ Sdbf-6Gsv)
2018/07/19(木) 14:01:22.48ID:goaSBPuMd >>732
定期的にこのスレを荒らすメリットがある。
定期的にこのスレを荒らすメリットがある。
734デフォルトの名無しさん (ワッチョイ 7783-4GkJ)
2018/07/19(木) 14:35:28.55ID:3tSlXwR10 10年で1スレも消費できないムラダ厨がまた初心者スレで暴れてるのか。
735デフォルトの名無しさん (ササクッテロル Sp4b-zvcE)
2018/07/19(木) 15:40:49.42ID:afTcWGfVp >>728
送る側で待たないと仕事を溜め込んだ受け側が最悪死ぬか無視する様になるぞ。
送る側で待たないと仕事を溜め込んだ受け側が最悪死ぬか無視する様になるぞ。
736デフォルトの名無しさん (アウアウエー Sadf-0r7x)
2018/07/19(木) 16:09:05.04ID:wWZN809Va >>735
意味わかんないよ
キューが満杯ならエンキューできないだけ。
そして、キューが満杯になるような事態が起こるかどうかは、キューを送る側受ける側
どちらが持つかという設計の問題とは何も関係がない。
送り側が持てばそんな事態は起こらない、などとはまったく言えない
意味わかんないよ
キューが満杯ならエンキューできないだけ。
そして、キューが満杯になるような事態が起こるかどうかは、キューを送る側受ける側
どちらが持つかという設計の問題とは何も関係がない。
送り側が持てばそんな事態は起こらない、などとはまったく言えない
737デフォルトの名無しさん (ワッチョイ ffed-4GkJ)
2018/07/19(木) 16:13:58.11ID:GVBKISLp0 共有メモリにFIFO作りたいのでサンプルコードください
738デフォルトの名無しさん (アウアウウー Sadb-4GkJ)
2018/07/19(木) 19:27:54.48ID:FFg3mKaqa >>737
基本的にスレチだな
基本的にスレチだな
739デフォルトの名無しさん (ワッチョイ f717-H0hI)
2018/07/19(木) 20:33:54.32ID:AM4tPqCx0 >>737
マルチ乙
マルチ乙
740デフォルトの名無しさん (ワントンキン MM7f-ArLl)
2018/07/19(木) 20:34:49.77ID:m5MPu7YPM バックグラウンドジョブをメモリに置いて管理するとクラッシュした時につらいのでやめてください
741デフォルトの名無しさん (ササクッテロル Sp4b-zvcE)
2018/07/19(木) 23:06:52.57ID:afTcWGfVp742デフォルトの名無しさん (ワッチョイ 9f7f-0FgR)
2018/07/19(木) 23:10:07.57ID:3HXgvZll0743デフォルトの名無しさん (ワッチョイ ffed-4GkJ)
2018/07/19(木) 23:16:09.86ID:GVBKISLp0 >>742
ありがとうございます
ありがとうございます
744デフォルトの名無しさん (アウアウエー Sadf-0r7x)
2018/07/19(木) 23:24:45.38ID:OO5CyzUia >>741
何を言ってんの。
ちゃんと自分の頭で考えて言ってる?
キューの容量が100だとする。
リクエストが100まで溜まってしまうかどうかは、キューをどちらが持つかと関係ないでしょ。
スループットはリクエストの処理能力で決まるんであって、キューをどっちが持つかで決まるんじゃない。
当たり前でしょ。
送る側が待てばたまらない?
それは受ける側がリクエスト拒否したらたまらないと言ってるのと同じ
君の世界じゃ、バケツリレーの余分なバケツの置き場所を送り元におくか送り先に置くかで
バケツの輸送能力(単位時間あたりの送れる水の量)が変わるの?
変わるわけがないでしょ
頼むよマジで
何を言ってんの。
ちゃんと自分の頭で考えて言ってる?
キューの容量が100だとする。
リクエストが100まで溜まってしまうかどうかは、キューをどちらが持つかと関係ないでしょ。
スループットはリクエストの処理能力で決まるんであって、キューをどっちが持つかで決まるんじゃない。
当たり前でしょ。
送る側が待てばたまらない?
それは受ける側がリクエスト拒否したらたまらないと言ってるのと同じ
君の世界じゃ、バケツリレーの余分なバケツの置き場所を送り元におくか送り先に置くかで
バケツの輸送能力(単位時間あたりの送れる水の量)が変わるの?
変わるわけがないでしょ
頼むよマジで
745デフォルトの名無しさん (ワッチョイ f7d2-zNEp)
2018/07/20(金) 00:04:31.35ID:K42rKqTp0746デフォルトの名無しさん (ワッチョイ 3781-0FgR)
2018/07/20(金) 00:15:51.43ID:v/t2rOLx0 >>745
クラスのインスタンスをメンバ変数などに設定して持つ
クラスのインスタンスをメンバ変数などに設定して持つ
747デフォルトの名無しさん (ブーイモ MM7b-klHS)
2018/07/20(金) 00:16:43.45ID:Cn0RK5hEM 配置計画
GOFはそちらを優先して説明しているが
GOFはそちらを優先して説明しているが
748デフォルトの名無しさん (ワッチョイ 171e-SQ69)
2018/07/20(金) 01:07:34.53ID:AsTO3swr0 持つと待つ
混ざりすぎじゃねぇの?
待つって言いたいんだよね?
混ざりすぎじゃねぇの?
待つって言いたいんだよね?
749デフォルトの名無しさん (オイコラミネオ MM4f-FMaE)
2018/07/20(金) 06:49:01.24ID:rjUp7fMrM750デフォルトの名無しさん (ワッチョイ 9f11-zNEp)
2018/07/20(金) 09:57:40.63ID:KW0DEJnu0751デフォルトの名無しさん (ササクッテロル Sp4b-zvcE)
2018/07/20(金) 10:43:27.30ID:aSukBuZjp752デフォルトの名無しさん (アウアウエー Sadf-0r7x)
2018/07/20(金) 10:47:52.01ID:j2kgPlBya >>751
まだ言ってるのか。
君の世界では
>送る側、更にそこに送る側、更に大元の送る行為を辞めされはいいって話
これが可能かどうかはリクエストのキューをどちらが持つかに依存するのか。
キューをリクエストの受け側が持ったらそれは出来ないのか。
意味が分からないよ
何が
>通信のフローコントロールの話と同じなんだよ?
だw
馬鹿過ぎて笑える
まだ言ってるのか。
君の世界では
>送る側、更にそこに送る側、更に大元の送る行為を辞めされはいいって話
これが可能かどうかはリクエストのキューをどちらが持つかに依存するのか。
キューをリクエストの受け側が持ったらそれは出来ないのか。
意味が分からないよ
何が
>通信のフローコントロールの話と同じなんだよ?
だw
馬鹿過ぎて笑える
753デフォルトの名無しさん (ラクッペ MM0b-3H7b)
2018/07/20(金) 10:50:07.22ID:GHEf7JCUM よそでやってくんねーかなクソカス
754デフォルトの名無しさん (ササクッテロル Sp4b-zvcE)
2018/07/20(金) 10:50:53.38ID:aSukBuZjp おまえ、目悪過ぎて呆れるわ。
持つなんて一言も言って無いだろw
待つだw マツ。
キューをどっちが持ってるかなんて話はしてない。
持つなんて一言も言って無いだろw
待つだw マツ。
キューをどっちが持ってるかなんて話はしてない。
755デフォルトの名無しさん (ブーイモ MM5b-4GkJ)
2018/07/20(金) 11:06:39.88ID:KI/QuNIvM アスペルガーの人はひとつのことしか同時にわからないから
二つ話題があることに気がつかない
その話題は持つであってるよ
二つ話題があることに気がつかない
その話題は持つであってるよ
756デフォルトの名無しさん (ササクッテロル Sp4b-zvcE)
2018/07/20(金) 11:16:02.27ID:aSukBuZjp >>755
まあ普通は受け取る側に郵便受けが無いと受け取る人はいちいち局留めの郵便を受け取りに行かなきゃならないんだけど、まあ、それはどちらでも機能するからあんまり争点にはならないけどね。
まあ普通は受け取る側に郵便受けが無いと受け取る人はいちいち局留めの郵便を受け取りに行かなきゃならないんだけど、まあ、それはどちらでも機能するからあんまり争点にはならないけどね。
757デフォルトの名無しさん (スププ Sdbf-DFDX)
2018/07/20(金) 13:07:56.71ID:aSN8UD58d バケツリレーの喩えでもスループットは変わっちゃうんだよな。
受け側に送信側が送信する総量より大きいバッファを持てば、スループットは水の入ったバケツを運ぶ時間に依存するだけで済む。
キューがそれより遅ければバケツを引き渡すために時間が余計にかかるわけだから、スループットは落ちる。
送信側にキューを持ったところで、送信側は送信処理に対して同期的に処理しないだけで済むだけで、そのキューからの送出がどんどん遅れるだろう。受け取ってくれないなら。
受け側に送信側が送信する総量より大きいバッファを持てば、スループットは水の入ったバケツを運ぶ時間に依存するだけで済む。
キューがそれより遅ければバケツを引き渡すために時間が余計にかかるわけだから、スループットは落ちる。
送信側にキューを持ったところで、送信側は送信処理に対して同期的に処理しないだけで済むだけで、そのキューからの送出がどんどん遅れるだろう。受け取ってくれないなら。
758デフォルトの名無しさん (ワッチョイ 17b3-H0hI)
2018/07/20(金) 13:54:59.01ID:gB9GbXMP0759デフォルトの名無しさん (ワッチョイ d763-ewJP)
2018/07/20(金) 21:28:53.81ID:OAXfUTo30 c=(a*a+b*b)
c=System.Math.Sprt(c)
これでcの平方根を出そうとしたのですがSystem.MathにSprtの定義がありませんと出ます
sharedevelopを使っています
c=System.Math.Sprt(c)
これでcの平方根を出そうとしたのですがSystem.MathにSprtの定義がありませんと出ます
sharedevelopを使っています
760デフォルトの名無しさん (ブーイモ MMcf-klHS)
2018/07/20(金) 21:32:35.58ID:XkM+nwLwM SQRT
761デフォルトの名無しさん (ブーイモ MMbf-rtlg)
2018/07/20(金) 21:35:00.80ID:6RzmSKAyM エディタの不具合だろ
SharpDevelopなどという化石は今すぐアンインストールしてVSかVSCodeを使え
SharpDevelopなどという化石は今すぐアンインストールしてVSかVSCodeを使え
762デフォルトの名無しさん (ブーイモ MMcf-klHS)
2018/07/20(金) 21:44:14.53ID:XkM+nwLwM 平方根の綴りが違う
763デフォルトの名無しさん (ワッチョイ 975d-egWL)
2018/07/20(金) 22:17:34.54ID:7jIkQpVM0 square rootだからねぇ
764デフォルトの名無しさん (ワッチョイ d763-ewJP)
2018/07/21(土) 00:28:32.93ID:WdWG9X6t0 ありがとうございます 解決しました
765デフォルトの名無しさん (ワッチョイ 9fe3-ol3M)
2018/07/21(土) 06:52:38.43ID:HGZKU0EK0 スパート!
766デフォルトの名無しさん (ワッチョイ 9f9d-gdxi)
2018/07/21(土) 13:53:42.54ID:aw31/LTY0 >>754
もともと
>キューを持つべきなのはリクエストを送る側ではなく受ける側なんじゃないか、
にたいして
>送る側で待たないと仕事を溜め込んだ受け側が最悪死ぬか無視する様になるぞ。
ってレスしてるのが発端なんだが
どうでもいい良いしよそでやって欲しいけど
もともと
>キューを持つべきなのはリクエストを送る側ではなく受ける側なんじゃないか、
にたいして
>送る側で待たないと仕事を溜め込んだ受け側が最悪死ぬか無視する様になるぞ。
ってレスしてるのが発端なんだが
どうでもいい良いしよそでやって欲しいけど
767デフォルトの名無しさん (ワッチョイ 97b5-zvcE)
2018/07/21(土) 14:14:10.21ID:IqGIA9LU0 話題が一変してんのにわざわざ掘り返すなよw
言ってる事とやってる事が矛盾してんぞw
言ってる事とやってる事が矛盾してんぞw
768デフォルトの名無しさん (ワッチョイ ff81-3H7b)
2018/07/21(土) 15:42:07.60ID:8fBGWCJL0 レスバトルって奴だろ
最後に言及した方が勝ちなんだって
これ見るといつも思うが、こういう馬鹿には自分自身を見る自意識がないのかね
最後に言及した方が勝ちなんだって
これ見るといつも思うが、こういう馬鹿には自分自身を見る自意識がないのかね
769デフォルトの名無しさん (ワッチョイ ffe8-U/lW)
2018/07/21(土) 20:00:10.16ID:rsQP0F780 たすけて!
Parallel.ForEachの中でデータグリッドの内容を更新してるんだけど
途中で爆発します
データグリッド全体に✕って出て非表示になる
データグリッドの更新処理はlockで囲ってても競合は起きちゃうものですか?
Parallel.ForEachの中でデータグリッドの内容を更新してるんだけど
途中で爆発します
データグリッド全体に✕って出て非表示になる
データグリッドの更新処理はlockで囲ってても競合は起きちゃうものですか?
770デフォルトの名無しさん (ワッチョイ f717-H0hI)
2018/07/21(土) 20:05:25.49ID:CBiNHREt0 まず原因を切り分けろ
Parallel.ForEachを外しても爆発するか確認するんだ
Parallel.ForEachを外しても爆発するか確認するんだ
771デフォルトの名無しさん (ワッチョイ ffe8-U/lW)
2018/07/21(土) 20:07:27.16ID:rsQP0F780772デフォルトの名無しさん (ワッチョイ 9f7f-0FgR)
2018/07/21(土) 20:08:57.28ID:gktKld7A0773デフォルトの名無しさん (ワッチョイ 9f5d-haGl)
2018/07/21(土) 20:10:43.13ID:BEEMYUE30 >>771
Action<TLocal> localFinally の引数をとるオーバーロードを使ってみたらどうでしょう?
Action<TLocal> localFinally の引数をとるオーバーロードを使ってみたらどうでしょう?
774デフォルトの名無しさん (ブーイモ MMcf-rtlg)
2018/07/21(土) 20:10:44.76ID:H6KFndt4M >>768
君のレスを見るといつも思うが、こういう特徴のある口調のレスを繰り返す人には自分自身を見る自意識がないのかね
君のレスを見るといつも思うが、こういう特徴のある口調のレスを繰り返す人には自分自身を見る自意識がないのかね
775デフォルトの名無しさん (ワッチョイ bf99-DFDX)
2018/07/21(土) 20:10:59.84ID:nH897ECr0 invokeするか、ContextにPostするしか無いんじゃないかな
776デフォルトの名無しさん (ワッチョイ 9fb3-y/zy)
2018/07/21(土) 20:22:09.68ID:3bWsh9tI0777デフォルトの名無しさん (アウアウエー Sadf-0r7x)
2018/07/21(土) 20:22:10.55ID://qCwfF7a 爆発w
778デフォルトの名無しさん (ワッチョイ ffe8-U/lW)
2018/07/21(土) 20:24:00.77ID:rsQP0F780779デフォルトの名無しさん (ワッチョイ 9f5d-haGl)
2018/07/21(土) 20:35:04.73ID:BEEMYUE30 私は >>773 ですが Invoke について自分があまり良く分かってない気がしてきたので
詳しい方がいらっしゃったら教えてください
UIスレッドで Parallel.ForEach を呼ぶとUIスレッドをつかんだまま並列処理が実行されて、
その並列処理のスレッドで Invoke を使うとデッドロックしてしまう気がするのですが
実際はそういうことはないのでしょうか?
詳しい方がいらっしゃったら教えてください
UIスレッドで Parallel.ForEach を呼ぶとUIスレッドをつかんだまま並列処理が実行されて、
その並列処理のスレッドで Invoke を使うとデッドロックしてしまう気がするのですが
実際はそういうことはないのでしょうか?
780デフォルトの名無しさん (ワッチョイ 9f9d-yhN8)
2018/07/21(土) 20:36:04.76ID:aw31/LTY0 マルチスレッドにしてInvokeしまくると結局パフォーマンスがガタ落ちしたりするがな
781デフォルトの名無しさん (ワッチョイ 9f5d-haGl)
2018/07/21(土) 21:15:58.91ID:BEEMYUE30 >>779 です
WPF で下のようなコードを実行してみたらやっぱりデッドロックしてしまいました
Invoke はそれなりに慎重に使わないといけないみたいです
void Button_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("このメッセージは必ず表示される");
Parallel.ForEach(Enumerable.Repeat(0, 2), i => Dispatcher.Invoke(() => { }));
MessageBox.Show("デッドロックするとこのメッセージは表示されない");
}
ちなみに Enumerable.Repeat(0, 2) の部分を変えると以下のような挙動でした
Enumerable.Repeat(0, 0) に変える → デッドロックしない
Enumerable.Repeat(0, 1) に変える → デッドロックする
new int[] { } に変える → デッドロックしない
new int[] { 0 } に変える → デッドロックしない
new int[] { 0, 0 } に変える → デッドロックする
WPF で下のようなコードを実行してみたらやっぱりデッドロックしてしまいました
Invoke はそれなりに慎重に使わないといけないみたいです
void Button_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("このメッセージは必ず表示される");
Parallel.ForEach(Enumerable.Repeat(0, 2), i => Dispatcher.Invoke(() => { }));
MessageBox.Show("デッドロックするとこのメッセージは表示されない");
}
ちなみに Enumerable.Repeat(0, 2) の部分を変えると以下のような挙動でした
Enumerable.Repeat(0, 0) に変える → デッドロックしない
Enumerable.Repeat(0, 1) に変える → デッドロックする
new int[] { } に変える → デッドロックしない
new int[] { 0 } に変える → デッドロックしない
new int[] { 0, 0 } に変える → デッドロックする
782デフォルトの名無しさん (ワッチョイ 572b-lqiN)
2018/07/21(土) 21:16:52.59ID:1oayVCQs0 >>778
いいってことよ(´・ω・`)b
いいってことよ(´・ω・`)b
783デフォルトの名無しさん (ワッチョイ bf99-DFDX)
2018/07/21(土) 21:18:17.40ID:nH897ECr0 >>779
並列処理はUIスレッドではないスレッドで行われるよ。
いや、UIスレッドで行われるとは限らない、と言う言い方の方が正しいかな。
UIスレッドを掴んだままの意味がわからんが、挙動が謎なら、ブレークポイントつけて実行して、どのスレッドが何をしてるかを把握してはいかがだろうか。
今どのスレッドを使ってるかは表示されてるから。
並列処理はUIスレッドではないスレッドで行われるよ。
いや、UIスレッドで行われるとは限らない、と言う言い方の方が正しいかな。
UIスレッドを掴んだままの意味がわからんが、挙動が謎なら、ブレークポイントつけて実行して、どのスレッドが何をしてるかを把握してはいかがだろうか。
今どのスレッドを使ってるかは表示されてるから。
784デフォルトの名無しさん (ワッチョイ bf99-DFDX)
2018/07/21(土) 21:20:54.98ID:nH897ECr0 WPFかあ
785デフォルトの名無しさん (ワッチョイ 7feb-yhN8)
2018/07/21(土) 21:25:21.58ID:VW1YO4fA0 Windows版VSCodeで、monoを構文解析用のコンパイラとして指定することってできないのかな?
Unityの.Net4.0用プロジェクトで、数ヶ月前までは、.Net3.5用のSystem.Data.DLLを読み込んでくれたのにさあ
VisualStudioを更新したら構文解析用のコンパイラが変わったのか、古い.net3.5用のDLLを読み込んでくれなくて赤波線だらけになっちゃったぜ
4.0用のDLLもあるわけだけど、それを入れるとUnityのmonoの方でなぜかエラーを起こすし・・・どうしたら良いものか・・・・
Unityの.Net4.0用プロジェクトで、数ヶ月前までは、.Net3.5用のSystem.Data.DLLを読み込んでくれたのにさあ
VisualStudioを更新したら構文解析用のコンパイラが変わったのか、古い.net3.5用のDLLを読み込んでくれなくて赤波線だらけになっちゃったぜ
4.0用のDLLもあるわけだけど、それを入れるとUnityのmonoの方でなぜかエラーを起こすし・・・どうしたら良いものか・・・・
786デフォルトの名無しさん (ワッチョイ 9f5d-haGl)
2018/07/21(土) 21:33:11.65ID:BEEMYUE30■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国側が首相答弁の撤回要求、日本側拒否 [夜のけいちゃん★]
- 債券・円・株「トリプル安」に…長期金利1.755%まで上昇、円は対ユーロで史上最安値 [蚤の市★]
- 映画「鬼滅の刃」の興行収入急減、日本行き航空券大量キャンセル…中国メディア報道 [蚤の市★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★5 [ぐれ★]
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 【大分】佐賀関で大規模火災、170棟以上が延焼中 70代男性1人と連絡取れず [ぐれ★]
- 【悲報】中国営業に熱心な日本人タレントたち、中国のイベントが続々と中止に… まだ予定中のアイドルとか歌手とかたくさんいるけど [452836546]
- 麻生太郎氏、高市政権と距離を置きはじめる(´・ω・`) [399259198]
- 高市総理で期待してるかもしれないけど、自民党はもうダメだから、超党派の勢力が出てくるみたいだぞ。 [134367759]
- 自閉症が「んなっしょい」と連呼するお🏡
- トヨタ、反日だった。2027年に中国にレクサスのEV工場を設立。高市 [931948549]
- 【悲報】高市効果で「1ドル=160円」が相場へwwwwwwwwwwwwwwwwwwwwwwwwwwwww 止まらぬ高市円安💥💥 [871926377]
