- 1 名前:デフォルトの名無しさん mailto:sage [2015/03/29(日) 01:04:56.64 ID:k9FOA6LX.net]
- ■Visual Studio 2013 Community & Express(無償の統合開発環境)等はこちら
www.visualstudio.com/downloads/ ■コードを貼る場合はこちら ideone.com/ ■前スレ C#, C♯, C#相談室 Part86 [転載禁止](c)2ch.net peace.2ch.net/test/read.cgi/tech/1419608259/ ■次スレは>>970が建てる事。 建てられない場合は他を指定する事。
- 207 名前:デフォルトの名無しさん [2015/04/18(土) 02:42:13.06 ID:HdP1ZQM0.net]
- IEnumrableを連結するためのいい方法を教えてください。
例えば、チームAとBがあってそれらはプレイヤーのリストであり、 TeamsでチームA、Bをリストに格納したものとします。 Teams.PlayersでチームA,Bの全選手のリストを取りたいわけですが、 スマートな方法はありますか? TeamA.Concat(TeamB)はあまり使いたくなく、 Teamsをベースにリストを作りたいです。
- 208 名前:デフォルトの名無しさん mailto:sage [2015/04/18(土) 06:23:14.28 ID:R+rnuYmC.net]
- >>204
TeamsのPlayersプロパティがConcatなりUnion返すのが最もスマートだと思うのだが
- 209 名前:デフォルトの名無しさん mailto:sage [2015/04/18(土) 07:01:49.33 ID:pSroTT2+.net]
- >>204
モナドってやつだね Teams.SelectMany(team => team.Players)
- 210 名前:デフォルトの名無しさん [2015/04/18(土) 08:52:16.55 ID:burvUFE+.net]
- C#は3年くらい使いまくって1年ぶりくらいにさわってます
DataGridViewの1セルへの更新(手動ではなくプログラム内での更新)を TimerかBackgroundworkerでやろうと思ってるのですが、 単純にTimerでやったら1Tcik終わってもDataGridViewへの更新って 画面が固まった感じで反映されないような気がしたのですが実際どうだったのでしょうか? Backgroundworkerだと1ループ終わったら自動的にDataGridViewの見た目上も反映されているんでしたっけ・・ よく分からない質問内容だったらスルーして下さい・・・
- 211 名前:デフォルトの名無しさん mailto:sage [2015/04/18(土) 09:16:27.94 ID:3v7Rv0Mr.net]
- >>207
スレッドが違う場合、Invokeする必要があるのでわ?
- 212 名前:デフォルトの名無しさん mailto:sage [2015/04/18(土) 09:20:07.37 ID:3v7Rv0Mr.net]
- >>199
MemoryStreamはドMじゃないから放置プレイは駄目なんでわ?
- 213 名前:デフォルトの名無しさん [2015/04/18(土) 09:28:10.42 ID:burvUFE+.net]
- >>208
なんとなくわかった感じです ありがとうございました!
- 214 名前:デフォルトの名無しさん [2015/04/18(土) 11:52:26.49 ID:HdP1ZQM0.net]
- >>204
使うときはそれが一番使いやすいけど わざわざそれ専用のクラス作るのもどうかと思いますよね >>206 ありがとうございます。これいいですね。
- 215 名前:デフォルトの名無しさん mailto:sage [2015/04/18(土) 12:06:04.72 ID:pSroTT2+.net]
- ちなみにこれも同じ意味
from team in Teams from player in team.Players select player SelectManyよりは直感的かも
- 216 名前:199 [2015/04/18(土) 14:13:56.20 ID:fnpHqX3V.net]
- >>209さん
一応呼び出し元でdisposeしております。どうもxpsdocumentのusing内の処理をコメントアウトしてもリークしており、xpsdocumentを生成しているところをコメントアウトするとリークしないようです。 com系はリリースする必要があるのは心得ているのですが、xpsdocumentでリークしているので関係ないかと思っておりますがどうなのでしょうか?
- 217 名前:デフォルトの名無しさん mailto:sage [2015/04/18(土) 14:44:39.95 ID:3v7Rv0Mr.net]
- >>213
呼び出し元でdispose? それって、ちゃんと出来てますか? Interop使うと大丈夫なはずですが。 リリースされてなかったらWordプロセスが残るので直ぐわかる。
- 218 名前:デフォルトの名無しさん mailto:sage [2015/04/18(土) 16:59:20.10 ID:fnpHqX3V.net]
- >>214
はい、まだ検証用としてテストしており、現在は戻り値に対してusingしております。 interopの場合は大丈夫なのですね。なお、作業後はwordを解放しております。また実行中はwordのプロセスは一つだけでした。
- 219 名前:デフォルトの名無しさん mailto:sage [2015/04/19(日) 00:37:46.86 ID:HISGzS4a.net]
- indexofを使用した文字列存在チェックについて質問させてください。
string test_value_1 = "abcdefg"; string test_value_2 = "abc゙defg"; int i_test_1 = -1; int i_test_2 = -1; i_test_1 = test_value_1.IndexOf("c"); i_test_2 = test_value_2.IndexOf("c"); なぜか、 i_test_2 の値が -1 になってしまいます。。。 原因がさっぱりわかりません。 どうすれば検索対象ワードの後ろに「゙」が含まれていても正常に判定する事が出来るでしょうか?
- 220 名前:デフォルトの名無しさん mailto:sage [2015/04/19(日) 01:27:12.32 ID:ll7tPPML.net]
- ふらっと池
- 221 名前:デフォルトの名無しさん mailto:sage [2015/04/19(日) 10:21:46.46 ID:k7uWDSkL.net]
- i_test_2 = test_value_2.IndexOf( "c" );
↓ i_test_2 = test_value_2.IndexOf( "c", StringComparison.Ordinal );
- 222 名前:デフォルトの名無しさん mailto:sage [2015/04/19(日) 10:23:18.02 ID:k7uWDSkL.net]
- 参考
dobon.net/vb/dotnet/string/issurrogatepair.html
- 223 名前:デフォルトの名無しさん mailto:sage [2015/04/20(月) 02:09:14.43 ID:vScs0W7J.net]
- >>218
ありがとうございます。
- 224 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 00:04:57.34 ID:eIv9ka2r.net]
- Excelのセルに値が入ったら、C#のプログラムを呼びたいのですが何か良い方法ありますか??
- 225 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 00:08:48.75 ID:gr9AedHH.net]
- C#でWinRTコンポーネントを作ります
Excelのイベントにコンポーネントの呼び出しを登録します 終わり
- 226 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 05:39:46.10 ID:QRapjwcs.net]
- vba
- 227 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 23:36:39.93 ID:gr9AedHH.net]
- MethodInfoからそのメソッドが定義されているソースファイル名と開始行番号を取得するといった処理を行いたいのですが何か良い方法はありますか?
- 228 名前:デフォルトの名無しさん mailto:sage [2015/04/23(木) 23:43:30.55 ID:XWDL07gH.net]
- そんな情報はアセンブリに残ってないから不可能
そういうデバッグ情報はpdbファイルに入ってるけど、pdbをC#から読む簡単な方法はない 静的なやり方でいいならCallerInfoが使えるかもしれない
- 229 名前:デフォルトの名無しさん [2015/04/24(金) 14:33:29.56 ID:5R7XVl4D.net]
- 力を貸してください
開発しているPCでは問題なく動くのですが、 他のPCだと foreach の所で止まっています LINQを使うには、相手PCにも何かインストールしないとダメ等あるのでしょうか PCは両方共Windwos7、.NET Framework4.5 です DataClasses1DataContext db = new DataClasses1DataContext(); var query = from p in db.History orderby p.DateTime descending select new { p.Text, p.DateTime }; foreach (var item in query) { listbox.Items.Add(item.Text); }
- 230 名前:デフォルトの名無しさん mailto:sage [2015/04/24(金) 14:35:41.12 ID:CTud03hi.net]
- DataClasses1DataContextてw
プログラマ向いてないわお宅
- 231 名前:デフォルトの名無しさん mailto:sage [2015/04/24(金) 14:37:54.86 ID:ZTxttjQ6.net]
- 接続文字列が間違ってるかDBそのものに繋がってないとかそんなオチだろどうせ
- 232 名前:デフォルトの名無しさん mailto:sage [2015/04/24(金) 14:42:02.83 ID:5R7XVl4D.net]
- >>227
それはマイクロソフトに言って下さい
- 233 名前:デフォルトの名無しさん mailto:sage [2015/04/24(金) 14:45:32.29 ID:5R7XVl4D.net]
- >>228
自分のPCでは正常に動くのですが、 PCが変わると接続文字列も変えないといけない等があるのでしょうか DBそのものにつながってないのかもしれませんが、 だとしたらどうすれば良いのでしょう
- 234 名前:デフォルトの名無しさん mailto:sage [2015/04/24(金) 15:01:17.64 ID:ZTxttjQ6.net]
- >>230
当たり前のこと聞いてんじゃないよハゲ SQLCMDとかSQLPlusとかで確認しなさいよハゲ
- 235 名前:デフォルトの名無しさん mailto:sage [2015/04/24(金) 18:35:17.61 ID:GgPeGlFA.net]
- 煽るだけなら消えろ目障りじゃヴォケ
- 236 名前:デフォルトの名無しさん mailto:sage [2015/04/24(金) 19:09:20.58 ID:z2qVEMBN.net]
- お前のことじゃねーかハゲ散らかすな
- 237 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 00:19:55.39 ID:sMUiXzz3.net]
- EntityFrameworkはバカ発見器
- 238 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 06:55:10.58 ID:tt9Mhkoz.net]
- >>234
なんで?
- 239 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 07:31:51.69 ID:2uH7aY0k.net]
- >>216
.NET Frameworkのバグだろう。 濁点(U+309B)を結合文字の濁点(U+3099)と間違えて 前の文字を食ってしまっていると見た。 309Bは独立した一文字とUnicode規格で定められているので この挙動はおかしい
- 240 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 13:58:35.62 ID:3n/a2nLj.net]
- >>236
試してごらん。 その通りになるから
- 241 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 14:33:57.39 ID:mbz7BAKa.net]
- >>237
話がかみ合ってなくないか?w
- 242 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 14:40:53.76 ID:QvaYObS+.net]
- >>237
236は、元指摘者がおかしいと言っているんじゃなくて、 .NET Frameworkの挙動がおかしい、と言っているように読めるよな?
- 243 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 15:10:33.99 ID:ffqiFpSQ.net]
- >>237
大丈夫か?
- 244 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 15:14:43.69 ID:95s1IhDm.net]
- >>237の人気に嫉妬
- 245 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 18:30:57.89 ID:OTvPnU3k.net]
- 日本語UNICODEって濁点と半濁点のせいで酷いことになってるな…
>>216 一文字だからIndexOf(char)でもいける
- 246 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 22:15:03.24 ID:ooA/qXe8.net]
- 別スレッドならlockで排他できるが
同一スレッドならどうやるんや!
- 247 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 22:17:23.82 ID:+aT1zS3O.net]
- 同一スレッドでロックできたら確実にデッドロックするだろ
lock (x) { lock (x) { //永遠にこの先には進めない } }
- 248 名前:243 mailto:sage [2015/04/25(土) 22:24:30.68 ID:ooA/qXe8.net]
- 解決した。こうすればロックできたで。
static bool using public void Func() { if(!using) { using=true; Func2(); using=false; } }
- 249 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 22:28:46.56 ID:buJ6SNpd.net]
- お、おう
- 250 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 23:12:40.79 ID:ktySFMEP.net]
- 同一スレッドで排他ってどういう意味だよw
意味わかんねえよw 再入を禁止したいってとこなんだろうけどそれ排他制御と全然違うよw
- 251 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 23:15:50.71 ID:cBq3bS3q.net]
- >>245
ロックじゃなくてブロックじゃね? ちょっとやばげなコードだけど
- 252 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 23:38:39.73 ID:I+SyOgpX.net]
- >>245
やりたいことはデザインパターンのBalkingパターンじゃね?ぐくれば一発
- 253 名前:デフォルトの名無しさん mailto:sage [2015/04/25(土) 23:55:10.02 ID:5+ben/uh.net]
- VB6のときにイベントの併発を抑止したくて書いてたようなコードだな…
- 254 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 01:04:33.71 ID:BUrUf7pH.net]
- Plugin機能を持つアプリケーションを作成しています。
本体であるHost.exeと、プラグインplugin.dll, plugin2.dllと三つのアセンブリがあるとします。 それぞれのアセンブリは、common.dllというアセンブリを参照していますが、バージョンが異なります。 Host.exe -> common.dll (v1.0.0.0) plugin.dll -> common.dll (v1.1.0.0) plugin2.dll -> common.dll (v2.0.0.0) Host.exeがplugin.dllをロードしたとき、plugin.dllはどのバージョンのcommon.dllを使用することになりますか?
- 255 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 02:37:54.99 ID:8XzOLDkN.net]
- それぞれのバージョンという発想は無いのかね
- 256 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 02:45:49.19 ID:ODa5V/dd.net]
- サイドバイサイドでググれば解決
- 257 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 08:41:45.50 ID:ZlFi06Be.net]
- 解決じゃねーよ
このケースは両方とも2.0が呼ばれるようにしたいんだろ そこは設定次第なので調べろ
- 258 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 08:57:13.13 ID:7jnYXfIp
]
- [ここ壊れてます]
- 259 名前:.net mailto: いやplugin.dllがv1.1のcommonを前提として作られてるならv1.1を参照するほうが安全だろ
っていうか相当互換性に気を使ってv2.0を作ってないとまず動かんよ [] - [ここ壊れてます]
- 260 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 09:04:58.11 ID:kgrG8lsG.net]
- common.dllを更新するときに非破壊を目指すはずじゃねーの?
古いほうが新しい方を参照してコケるとか下手打ち過ぎ つーか全然commonじゃねーし
- 261 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 09:09:20.23 ID:ODa5V/dd.net]
- >>254
頭大丈夫?
- 262 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 09:12:21.40 ID:7jnYXfIp.net]
- >>256
この手の問題ってMSですら莫大なコストかけて苦労してるのに大した自身だな 特にプラグインは作ってるのが別の人である場合が多いから、自分が仕様と考えてないような 実装の詳細に依存した挙動に依存されてしまってる可能性も高いわけ それを完全に互換性を保ちながら弄るのは非常に難しいこと
- 263 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 09:28:58.32 ID:oidXsJ58.net]
- dll hell 問題は経験して初めてわかることが多いからねー。
インターフェースさえ変えなきゃOKと思っているようでは、まだ甘いよねー。 > 実装の詳細に依存した挙動に依存されてしまってる可能性も高いわけ まさにコレ。 windows では良くあった話だよねー。
- 264 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 09:51:27.92 ID:STsPn6nz.net]
- >>253
同じEXE(プロセス内で違うバージョンのが呼び出せるんけ?
- 265 名前:251 mailto:sage [2015/04/26(日) 09:54:35.17 ID:BUrUf7pH.net]
- すみません、もう少し捕捉します。
common.dllという名前にしていますが、DynamicJsonのようなオープンソースのDLLをイメージしています。 やりたいことは、それぞれのアセンブリが別々のバージョンのcommon.dllを利用できるようにする、です。 理由はすでに出ていますが、想定していないバージョンのcommon.dllを参照して副作用が起きるのを防ぐためです。 サイドバイサイドで検索してみました。 あまり情報を拾えませんでしたが、それぞれのアセンブリでmanifestファイルを用意し、バージョン指定すればOKということでしょうか? もうすこし調べてみます。
- 266 名前:デフォルトの名無しさん mailto:260 [2015/04/26(日) 10:12:56.42 ID:STsPn6nz.net]
- DLLにもマニフェスト埋め込み出来るんだな
EXEにしかできないと思ってた orz >>261 VSでDLL, EXEを開けばマニフェストが見えるのでdependentAssemblyを 見ればどれを参照しているのか分かる。 無ければ mt.exe 使ってマニフェスト埋め込めば良いべ。
- 267 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 12:12:05.59 ID:432jfl9j.net]
- いきなりむつかしい話になったのね
(´・ω・`)
- 268 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 12:29:32.62 ID:gPWJqI6O.net]
- とくに何もしなくてもビルド時に指定したバージョンのアセンブリを参照するように出来てるよ
- 269 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 14:52:02.86 ID:EKpVXEVk.net]
- ビルドしたプログラムのDLLを違うバージョンに置き換えたらエラー出なかったっけ
- 270 名前:デフォルトの名無しさん mailto:sage [2015/04/26(日) 15:29:10.19 ID:w3/wNAjc.net]
- フレームワークのバージョンを4.5.1から4.5.2にして
System.Stringが使えなくなったら俺は困る
- 271 名前:デフォルトの名無しさん [2015/04/27(月) 01:33:25.58 ID:FhaGT+rH.net]
- c# + Unity + 自作スクリプトでゲーム作ってます。
以下のような自作スクリプトでUnity上にウィンドウを表示します。 -自作スクリプト msg = Massagebox.New(MSG_STYLE.YesNo) msg.Massage = "Please Select Yes or No" result = msg.Show() ウィンドウを表示したらスクリプトは待機状態になって、 Yes Noを選択したら処理を再開して戻り値を返すようにしたいのですが、 while(IsReturn == false)などでループさせると固まってしまうし、 StartCorutine(Ienumrator)で入力が完了するまでループさせようとしても メイン処理はそのまま進んでしまいます。 こういうのはコールバックを用意するしか方法はないのでしょうか?
- 272 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 06:32:13.31 ID:LuApQf8y.net]
- unity モーダルダイアログでぐぐったら
一番上に来たぞ
- 273 名前:207 [2015/04/27(月) 11:28:30.00 ID:3IxpbeeH.net]
- 相談です
GUIでプログラムを作っています。(以降、Gと書きます) 配列にするか、バラバラにして個々のオブジェクトで変数定義するかで悩んでます。 具体的には、 あるサーバからの通知をGでInvokeして配列(メンバ変数1次元10000長さ)のバッファにデータを貯めています。 つまり、Gにとっては非同期でInvokeされ、配列にアクセスされるのですが Invokeが多くなると遅延してきます。
- 274 名前:配列という1オブジェクトに対してアクセスさせているのがだめなのかと思い、
配列をやめて10000のメンバにしようかと思いました。 (つまりソースは汚いですけどガチガチのハードコーディング?みたいな感じです) こうすると、遅延が無くなると思いますか? 通知量押さえる方法は単純なんですけど諦められなくて・・・ [] - [ここ壊れてます]
- 275 名前:269 mailto:sage [2015/04/27(月) 11:30:08.10 ID:3IxpbeeH.net]
- ちなみに通知はGにとってはミリ秒単位ですね
- 276 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 11:32:59.55 ID:8lI03z25.net]
- ゴキブリかと思ったら違った
- 277 名前:269 mailto:sage [2015/04/27(月) 11:40:04.13 ID:3IxpbeeH.net]
- ゴキブリwww笑った
もう出そうな季節ですけどね・・・
- 278 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 11:41:21.60 ID:8lI03z25.net]
- 何を言ってるのかよく分からないけど、バッファのデータをアトミックに操作したいなら
Invokeじゃなくて排他制御をしなきゃダメだし、そもそもアトミックである必要が あるのかないのか。
- 279 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 11:43:44.89 ID:4SSIO0jR.net]
- >>273
横文字ばかりで何言ってるのか意味不明です。
- 280 名前:269 mailto:sage [2015/04/27(月) 11:49:05.14 ID:3IxpbeeH.net]
- >>273
説明下手ですみません・・・ バッファ[] ↑ FuncA() FuncA() FuncA() FuncA() : こんな感じでアクセスが待ってるんだと思うんです つかもうオブジェクト分けて実験してみないと 誰も答えようないですよね・・
- 281 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 12:29:24.88 ID:jIpV3z07.net]
- 要はInvokeのキューが詰まってるんだろ?
そもそも配列に格納していく処理をなんでG側でやる必要があるんだ Invokeしないで普通に配列ロックして読み書きすればいいだろ
- 282 名前:269 mailto:sage [2015/04/27(月) 12:30:02.48 ID:3IxpbeeH.net]
- 一応自己解決しました!
高速化を追求して、配列をやめて10000個の変数を定義することにしました・・・^^;
- 283 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 12:33:08.33 ID:3IxpbeeH.net]
- >>276
そうですね、詰まってますw ありがとうございます、その方法も後で試してみます。 趣味程度のツールだから早ければ何でもいいんです・・・
- 284 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 14:20:21.48 ID:DjqFDg/Y.net]
- (普通とは異なるベクトルに)ハイレベルすぎる
- 285 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 15:28:48.27 ID:jtwEf5H2.net]
- 何年くらいやってればここの人たちくらいのレベルになれますか?
- 286 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 20:12:45.37 ID:Z3xfpVj4.net]
- >>277
10,000個の変数と配列で違いがあるとは思えないが。 GのInvokeのシングルスレッドがボトルネックなんでしょ? >>280 ここの人たちのレベルはピンキリなんだが 大体10,000時間くらいc#やればモノになると思う。 5年ほど精進しなはれ。
- 287 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:12:43.93 ID:3IxpbeeH.net]
- >>281
ほんとに説明下手ですみません サーバでイベントが発生すると、 G側でInvokeされたシングルスレッドのFuncA()が呼ばれます。 サーバのイベントは非同期なのでいつどれくらいの頻度で発生するかは不確定です。 目視では一番多い時で秒間600〜700はFuncA()が呼ばれていると思われます。 それが一つの配列にアクセスしようとするので上の方もおっしゃっていた キュー詰まりが発生していると思われます。 ※配列アクセス速度についてググってみましたけどだいたい1.5ミリ秒らしいです。 まあ、実際配列をやめて試してみないと何とも言えないですね。 サーバのイベントをGで少なく見るようにすると遅延しなくなるので・・・ 遅延によって、サーバからのデータのタイムスタンプと Gでのタイムスタンプの差がどんどん広がっていくのが問題になっています。 実装後の結果は一応書き込ませてもらおうと思います。
- 288 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:15:30.11 ID:jIpV3z07.net]
- >>282
原因は一つの配列にアクセスしてることじゃなくてInvokeを使っていることだ 配列アクセスのコストなんて全く無視できるような重い処理
- 289 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:18:37.96 ID:3IxpbeeH.net]
- >>282
>遅延によって、サーバからのデータのタイムスタンプと >Gでのタイムスタンプの差がどんどん広がっていくのが問題になっています。 追記:サーバからのデータはG側のキュー待ちで随時Gの配列に更新されていきますけど、 Gで任
- 290 名前:意のタイミングで配列データを画面表示したときキュー待ちのために
実際のサーバの時刻との差が出ているということです。 [] - [ここ壊れてます]
- 291 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:20:35.79 ID:uZ2g1W98.net]
- 説明下手も相当なものだけど、それ以前にたぶんUIスレッドで実行すべきものとそうでないものの
区別がついてないし、スレッドが何か分かってなさそうw
- 292 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:21:57.14 ID:qEli+Bnq.net]
- >>284
返信をちゃんと読め
- 293 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:23:40.25 ID:uAdQMsgS.net]
- 通知がミリ秒単位だからといって
画面更新もミリ秒単位でやる意味なくね? 画面更新なんてゲームでもなければ100msでも充分なぐらいじゃね?
- 294 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:24:19.16 ID:3IxpbeeH.net]
- >>283
Invokeですか;; 一応配列をやめてやってみてだめなら試してみます
- 295 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:27:06.47 ID:jIpV3z07.net]
- タイマー使って適当な間隔で見に行けば済む話だわな
秒間数百程度なら実質シリアルになっても全然余裕だから配列アクセスの箇所全部lock(array) { }で囲めばいいよ
- 296 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:29:28.25 ID:3IxpbeeH.net]
- >>287
画面更新は500ミリ秒ですね〜 サーバ提供のDLL使ってるから色々製薬合って変更できないんですよ;w;
- 297 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 21:33:44.76 ID:3IxpbeeH.net]
- >>289
タイマーで画面へリフレッシュしてます。 おお〜lockですかさすがですね、ありがとうございます サーバ開いたらそれも試してみます。
- 298 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 22:32:01.13 ID:3IxpbeeH.net]
- レス抜けてたわスマン
>>285 正直スレッドとかプログラムとかあんまわかんないですね〜 目的のものができればいいんで結構適当なんですよw でも今回のツール作成でデリゲートとか色々つかえるようになったお^^ >>286 さ、さーせんww 連投しすぎたからあとは結果だけを、 サバが開くのは水曜なので参考までにいちおう載せさせて頂きます〜 忘れてたらゴメン
- 299 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 22:46:23.46 ID:3IxpbeeH.net]
- たぶんファナが寄与度高いから先物上げたんだと思う
- 300 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 22:47:19.17 ID:3IxpbeeH.net]
- gb
- 301 名前:デフォルトの名無しさん mailto:sage [2015/04/27(月) 23:56:24.36 ID:Cx09mtaZ.net]
- >>280
VB.NET歴3ヶ月ってかプログラム歴3ヶ月だけどこのスレ程度の内容は殆ど理解してるよ C#はやったことない
- 302 名前:デフォルトの名無しさん mailto:sage [2015/04/28(火) 00:12:15.09 ID:wMm06VSu.net]
- >>295
すごいねえ。きっと向いてるか、センスがあるのね( ´ ω ` )
- 303 名前:デフォルトの名無しさん mailto:sage [2015/04/28(火) 00:21:51.70 ID:/rUvKhpD.net]
- 初プログラミング言語にVB.NETを選んじゃった時点でお察しレベル
- 304 名前:デフォルトの名無しさん mailto:sage [2015/04/28(火) 00:31:22.83 ID:wMm06VSu.net]
- >>297
自慢してるんだから褒めときゃいいものを(´・ω・`)
- 305 名前:デフォルトの名無しさん mailto:sage [2015/04/28(火) 00:35:34.89 ID:H8kt2Xqa.net]
- >>297
素人でも少し勉強すればVB.NETもC#も概ね同じ言語と気が付く筈だが
- 306 名前:デフォルトの名無しさん mailto:sage [2015/04/28(火) 00:41:52.49 ID:qEU/tEr7.net]
- >>295
俺C言語3年くらい仕事でやってたけどここの人たちが何言ってるのか 全然分からんw
- 307 名前:デフォルトの名無しさん mailto:sage [2015/04/28(火) 01:48:27.47 ID:WlXt1XFb.net]
- >>295
IQ145の女子高生ですか?
|

|