1read 100read
2013年17プログラム2: ふらっとVisual C#,C♯,C#(初心者用) Part106 (992) TOP カテ一覧 スレ一覧 2ch元 削除依頼
【DI】Java Spring Frameworkを語るスレ 5.0 (157)
Microsoft Silverlight その9 (472)
ECMAScript デス 4 (402)
Ruby 初心者スレッド Part 52 (520)
Jython、Groovy、JRuby - どれが一番効率的? (277)
ECMAScript デス 4 (402)

ふらっとVisual C#,C♯,C#(初心者用) Part106


1 :2013/09/07 〜 最終レス :2013/09/25
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問。
質問者自身なんだか意味がよく分からない質問。
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められることがあります、ご了承下さい。
なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっとVisual C#,C♯,C#(初心者用) Part105
http://toro.2ch.net/test/read.cgi/tech/1371948073/
■関連スレ
C#, C♯, C#相談室 Part80
http://toro.2ch.net/test/read.cgi/tech/1373037260/
■コード貼るなら↓使ってください
http://ideone.com/

2 :
XNAが終了ということを知ったんですが
いまだとirrlichtが最強なのかなと思いました
このスレの先輩にもご意見をお伺いしたいのですがこのライブラリはどうでしょうか?

3 :
>>2
ゲームなら今やUnity一強
.NETじゃないけど言語はC#だよ

4 :
Unityっすか
実はUnity使ってみたかったんですが
ぼくのPCだと重すぎて
メモリ1GB オンボード Celeron1コア なんですが先輩方はどのくらいのスペックでUnityを快適に開発しているのでしょうか?

5 :
Unityが重いならVSの最新版もまともに動かんよ

6 :
>>4
さすがに買い換えろよ
それだとVS2003で精一杯なレベルだ
UnityもVS2012も今のでっかいソフトにしては決して重くない
最新のPCなら安いノートで十分快適に動くよ

7 :
3〜4万も出せばPCを買える時代の終わりは近い

8 :
これからは1万円台か

9 :
TypeLoadException が出たのですが、どうやって直したらいいでしょうか?
アセンブリは、ちゃんとexeと同じ場所にあるので、アセンブリ(*.dll)は読み込めてると思います。
でも、たぶん型が読み込めてない(??)みたいなのですが……
教えてください


System.TypeLoadException はユーザー コードによってハンドルされませんでした。
HResult=-2146233054
Message=アセンブリ 'HogeHoge, Version=1.0.0.0, Culture=neutral, PublicKeyToken=ab81addb3b46712a' から型 'HogeHoge.ClassA' を読み込めませんでした。
Source=MameMame.ClassB
TypeName=HogeHoge.ClassA

10 :
try{>>9}
catch(Exception e){
int n= 0;   //ここにブレークポイント設定して e の中身見ろ。解決方法が載ってる
}

11 :
メッセージ通りとしか言いようがない

12 :
こういうのは全ソースとバイナリ貼ってくれないと解決しないパターン

13 :
必要も無いのにGACに登録してて、
コンパイルのとき指定したアセンブリと
GACのアセンブリで同期が取れてないとか

14 :
こうして欲しい
DLLプロジェクトを名前変えて作り直す
厳密名その他Hogehogeの設定に近づけつつ動かす
動かなくなる設定を突き止めたら調べて正しい設定にする
ダメならダメな理由を添えてここで質問

15 :
全エレメントを列挙してscrollTopを取得したのに
0より大きい値がひとつも取れないってどうゆうこと?

16 :
俺んとこじゃBody.ScrollTopでちゃんととれてるから
ただの環境依存じゃない?

17 :
とれたよ。マジでありがとう。

18 :
現在マルチスレッド処理を行うプログラムを書こうとしています。
Form1とForm2が存在し、初めはForm1のみが表示されています。
Form1のボタンを押すとForm2が表示され、Form2では重い処理を行っています。
この際Form1ではそのまま処理を続行したいのでForm2のclassを作ることから表示するまでをThreadクラスを使って別で処理させて、そのままForm2の描画および処理を行っています。
ですがボタンのイベント内で行っているので、イベントを抜けた途端にForm2も消滅してしまいます。これを解決する方法はないのでしょうか?

19 :
Form2の表示はApplication.Runを使う必要があると思う

20 :
スレッドはSTAね

21 :
重い「処理」だけスレッドに追い出せばForm2自体はスレッド分ける必要ないだろ

22 :
別にフォームごとサブスレッドにしてもいいと思う

23 :
どう実装してるのか解らないけど、Form1のフィールドとしてForm2とスレッドの
変数を用意し、ボタンイベント内でそれぞれをインスタンス化すればいいんじゃ
ないの?
ボタンイベント内で変数を定義していないか?

24 :
何言ってるのかさっぱり意味不明な質問によく回答できるよね。
ア○な質問者よりそっちに関心するわ

25 :
>>21
そうだね
前にグレープシティのコントロールがマルチスレッドだと落ちるって情報を見かけたし、
UIは安易にマルチスレッドに頼らない方が良い

26 :
でもフォームごと別のスレッドにしないと元スレッドのUIの処理の
影響受けちゃうからなぁ。あれは嫌だなぁ。

27 :
>>24
暇なんだw
確かにForm2が全然イメージ出来ない
重い処理をForm2に押し付けたらすぐ応答なしになっちゃうし、何がしたいんだろうねw

28 :
>>26
影響受けちゃうと言うか受けないように作るべきだけど面倒だよね

29 :
C#で作ったアプリケーションを起動してみたら
アプリケーションを正しく起動できませんでした(0xc000007b)
ってエラーがでたんだけど解決方法わかります?

30 :
64bit環境で32bitアプリを起動したとか?

31 :
ワオキツネザルを無効にしてるんじゃなければ(そもそも無効にできるかどうか知らんけど)
それで問題が起こるとは思えませんが。

32 :
自分でも何を質問してるのかわからない状態に陥っていますが…
再度整理すると、
現状ではボタンのクリックイベント内に別のFormクラスを宣言させて、Show()メソッドでForm2を表示しています。
Form2で行いたいことは、Form2内のボタンを押すとファイルを読み取りファイルを編集し、終わった後にForm2を自動的に閉じる、というものです。
ですがファイルサイズが大きいので動作が重くなってしまい、呼び出したForm1が止まってしまいます。
Application.Run()を使ったら
単一スレッド上で 2 回目のメッセージ ループを開始することは有効な操作ではありません。Form.ShowDialog を使用してください。
というエラーが表示されてしまいました。

33 :
うんそうだね

34 :
>>32
>>33>>31
Application.Runはバックグラウンド実行させるメソッドの中だよ

35 :
>>32
>Form2内のボタンを押すとファイルを読み取り
この「ファイルを読み取る」のが遅いんだから、その部分だけを別スレッドにすればいい

36 :
>>32
>>35の言うとおり、そうしないとForm2がフリーズする事になる。

37 :
非同期も選択肢がだんだん増えて便利になった分、ゼロから覚える人は大変だよな。
まあデキる人ならどの道3日ぐらいでものにしちゃうのかもしれんが。

38 :
ファイル読み取りを別スレッドにわけて、その処理の最後にfinishフラグのboolをtureにし、Timerで1秒間隔で読ませて、条件を満たしていたらFormを閉じるという無理やりな処理ですが、一応目標は達成できました…
もっといい処理はないものでしょうか…?

39 :
invokeする

40 :
>>38
これ最適化で無限ループ化するやつだよね

41 :
>>38
スレッドにフォーム渡しておいて、読み込み終わったらform.Close()
↑こういうやり方すると誰かが文句いうが気にしない

42 :
処理が終わったら閉じるとか、form2って単に処理中とか
プログレスバーを表示するだけのものなのか?
だったらそれ自体不要なんじゃないのかな

43 :
その重い処理から定期的にメッセージループを回せよ。
どうせプログレスバーも更新する必要もあるんだし。

44 :
>>41
invokeでだよね
>>42
ボタンを押したらって書いてあるからファイル選択するんじゃないか?

45 :
NET4.5以降ならAsync/Awaitの出番
TaskやBackgroundWorkerでもよい

46 :
ファイル読み込みなんだからボトルネックはHDD。
いちいちスレッド使うなよw 同期とかで余計に複雑になるわw

47 :
Form2にはファイル選択とどの動作を行うかの選択のボタンやチェックボックスがついているため、Form2は必要になっています。
Invokeの使い方をまだよくわかっていなかったため使用を見送っていました。
メッセージループということは、Application.DoEvents()で良かったでしょうか。
Frameworkは4を想定していたので、それは使えませんね…

48 :
>>46
じゃどうすんだよ?w

49 :
>>48
ファイル読込ループにDoEvents()でも入れとけ。

50 :
Windows7って標準で.Net4.0がインストールされていますか?

51 :
>>47
invokeならこう
this.Invoke((MethodInvoker)delegate
{
this.Close();
});
DoEventsだとForm1の反応も悪くなる

52 :
>>49
ファイル読み込みなんだからボトルネックはHDD。
だからスレッドなんて使わずDoEventsにしろ。
全く意味が分かりませんねぇ┐(´〜`)┌ ヤレヤレ

53 :
>>52
コード書かない奴には理解できないよ。

54 :
コード書いてるけど分からんわ

55 :
ややこしそうだからスルーで

56 :
同期考えないでスレッド生成しまくってるタイプか。
不定期にデッドロックしてもマイクロソフトだからですとか言いそう。
そういうプログラマを何人も見てきた。

57 :
DoEventを素人にすすめる低能は死んでくれる?

58 :
素人にマルチスレッド薦めるなw >>52 みたいなアホが大量生産されるw

59 :
doeventsよりスレッドのほうがわかりやすいけど

60 :
同期考えないからだろwww
過去にハイパースレッドとか出始めたときどんだけフリーズするアプリがあったんだよw

61 :
どんだけあったの?w

62 :
さすがに初心者にマルチスレッドはないな。
単独スレ立つぐらいなのに。CPUの知識は必須。
マルチスレッドプログラミング相談室 その9
http://toro.2ch.net/test/read.cgi/tech/1339691517/

63 :
CPUの知識てw

64 :
>>50
されてません
http://www.atmarkit.co.jp/ait/articles/1211/16/news093.html

65 :
CPUの知識ワロタ。どうせおまえもCPUの知識なんてカスほどしかねーだろ

66 :
原理から理解する必要があるって言ってた奴とかぶるものがあるなw

67 :
原理主義者だな
テログラマーか?

68 :
いくつ抽象化レイヤーをぶち抜いたらCPUの話になるんだよ

69 :
>>63
落ち着け。初心者だと言ってるようなものだぞ。
さて、この勘違いした初心者をスルーすべきか相手にすべきかだな。

おれはパス。

70 :
>>68
ほう。なぜこれが同期できてないかCPUレベルの話なしで初心者に説明してくれ。
これは典型的な初心者が書く馬鹿コードだから。既に稼動してるシステムで何度も見てきた。
Form1とかで
bool lock = false
int data = 0;
別スレッドで
if(!lock){
lock = true;
data処理
lock = false;
}

71 :
確かにスレッド案はまだ停止用フラグの実装とかやる事あるけど、
今回は独立性高いし勉強用としては良いと思う。

72 :
>>70
そもそも待機するコードになってないから

73 :
釣りでなければ、どこにCPUレベルの話があるのかわからんが
もしかして、スレッドの話=CPUの話だとでも思ってるのか

74 :
>>72
正しいコードプリーズ。

75 :
volatileが必要とでも言いたいの?
そもそも説明を要求された理由が分からない

76 :
このスレのあまりのレベルの低さに同情する。 >>70

77 :
CPUの知識がどのレベルなのか分からないけど
レジスター、スタック、ヒープの構造と
各スレッドのコンテキストに割り当てられるリソースの
関係については知ってる必要があるし、それはCPUの
知識と言えるかもしれない

78 :
ロックしたいなら>>70なソースは書くわけないし。どう見ても>>70=>>76だし。自演までレベル低くて同情するよ

79 :
ロックってmonitor使うんじゃないの?騙された?

80 :
>>78
正しいコードプリーズ。

81 :
アセンブラのプログラマーの方ですか?
ここはC#スレですよ

82 :
初心者ならそれこそBackgroundWorkerだろ
同期やロックはBackgroundWorkerイベントで
隠蔽されて安全に使える。

83 :
精々lockやReaderWriterLockSlimで終わる話
なぜにCPUまで持ち出さないといけないのか

84 :
初心者にはマルチスレッドは無理。
知ったかに説明しても逆ギレするだけ。

85 :
>>80
ほらよ
ttp://codezine.jp/article/detail/139 の待機ハンドル
if(!lock)なんてやっても一瞬で素通り。while(1)かましたらずっと判定処理になるだろ
そんな糞コード書くなよ

86 :
>>85
while(1)にしても同期できないよ、素人。

87 :
while(true){
if(!lock){
lock = true;
data処理
lock = false;
}
}
これなら同期できると思ってる馬鹿がいる件について

88 :
>>86
だからそんなの使わないって書いてるだろ。日本語ぐらい読めるようになれ

89 :
>>70は会社員なのかなんなのかしらんが
既に稼動してるシステムでこのレベルのコードでマルチスレッド扱うプログラマがいるの?
ちょっといくらなんでも信じられん

90 :
>>89
このスレで誰も答えを言えないのが答えさ。

91 :
>>79,81,82,85に答えがあるのにそれを全部無視する>>70

92 :
>>85は知ってるが>>70のコード断片から導くのは困難だわ
CPUのキャッシュとメモリの同期の話とかかと思いきや何だよ考えて損したw

93 :
>>91
その中で一つでも同期できない理由を説明したものがあるのか。
ないじゃんwww

94 :
素直にマルチスレッドなんにも分からないから教えてください、って言えよ

95 :
>>93
>>72

96 :
>>95
while(true){
if(!lock){
lock = true;
data処理
lock = false;
break;
}
}
これで同期できる?

97 :
はい解散〜
解散解散〜

98 :
>>96
それで同期出来るなんて誰も言ってないしw
もう引き下がってくれよw
めんどくせーよー

99 :
>>96
できない>>85にあるだろ。こんなイメージ
while(true)
{
  manualEvent.WaitOne();
 //処理
}

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
ネットワークプログラミング相談室 Port29 (372)
【実験台】 Python 3.0 のお勉強 Part 1 【非互換】 (571)
【JS】スクリプト,バトルロワイヤル39【Perl,Ruby,PHP,Python】 (1001)
【消しゴム】MONOを使ってみるスレ4【じゃない】 (525)
人工知能は感情を獲得する事ができると思いますか? (570)
静的型付け言語の潜在開発生産性は今の100倍 (836)
--log9.info------------------
ヴァンガード クラン強さ議論スレpart2 (171)
【MTG】ネガキャン対策2【低調スレ】 (474)
【遊戯王】先史遺産デッキ 遺産3つ目【オーパーツ】 (372)
カードショップ店員ヲチスレ (155)
【遊戯王】失われた聖域-第35光臨-【天使族総合】 (448)
【MTG】譲渡/トレード/売買スレ (882)
【遊戯王】おジャマで相手をお邪魔するスレ4 (402)
【遊戯王】爬虫類族スレ26【エーリアンヴェノムワームレプティレス】 (537)
【ウォリアー】遊戯王 遊星デッキ29【シンクロン】 (553)
【FOW】Force of Will 総合スレ10 (261)
【D0】ディメンション・ゼロ Part.43【全最予選】 (750)
【MTG】緑スレ【ガラク22(にぃに)】 (704)
【遊戯王】Skypeで対戦するスレ フェイズ5 (284)
【MTG】デッキビルダーの電波発表スレ29Hz (933)
【MTG】青スレpart31 (154)
【感情を冷やせ】炎属性総合 34【冷静に対処しろ】 (190)
--log55.com------------------
【芸能】宮迫博之、明石家さんまの「内定取り消し」発言を受け世間は意外な反応
【N国党】立花孝志「マツコは権力の犬!気持ち悪いのはお前!テレビ局の犬!ワンワンワン!」徹底批判でタレント生命危機 ★19
【芸能】「SixTONES」「SnowMan」がジャニーズ初の同時CDデビュー決定
【高校野球】星稜・奥川が圧巻の3安打9K完封勝利!最速153キロに甲子園どよめく
【メロリンQ】山本太郎 小泉進次郎氏、滝川クリステル結婚を官邸で報告した事に皮肉「政治的なにおいがぷんぷん」 ★2
【高校野球】<「佐々木朗希」の後味悪い幕切れ>進まぬ高野連の改革、“感動話”で商売する大人たち
【野球】クロマティさん、試合前に打撃指導…原監督が依頼v
【サッカー】セリエAラツィオ過激サポーター集団のリーダー、射殺される