1 名前:デフォルトの名無しさん (ワッチョイ f97b-lsIp) mailto:sage [2016/10/08(土) 21:33:26.22 ID:KfBpvv2w0.net] 「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。 他のスレッドでは書き込めないような低レベルな質問、 質問者自身なんだか意味がよく分からない質問、 ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。 内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。 なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。 C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください >>980 を踏んだ人は新スレを建てて下さい。 >>980 が無理な場合、話し合って新スレを建てる人を決めて下さい。 ■前スレ ふらっと C#,C♯,C#(初心者用) Part124 echo.2ch.net/test/read.cgi/tech/1471004887/ ■関連スレ C#, C♯, C#相談室 Part91 echo.2ch.net/test/read.cgi/tech/1467142749/ ■コードを貼る場合は↓を使いましょう。 ideone.com/ https://dotnetfiddle.net/ ■情報源 https://msdn.microsoft.com/en-us/library/gg145045.aspx referencesource.microsoft.com/ VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
726 名前:デフォルトの名無しさん (ワッチョイ 92e5-/mAi) mailto:sage [2016/12/03(土) 13:33:41.53 ID:OhSejOMk0.net] >>710-712 イメージ的には getList←同期 getListAsync←非同期(内部でgetListを呼ぶ) のようになるのかなと。 もとのgetList自体は同期処理で動くようにしておきたかっただけという簡単なものでした。 >>712 さんの言うところで出来てしまいました…。 あっさり過ぎて…ありがとうございました。 これでUIが固まらない為だけの面倒な非同期を書かなくて済みそうです。
727 名前:デフォルトの名無しさん (スッップ Sda8-wK09) mailto:sage [2016/12/03(土) 17:28:43.65 ID:6dOdOU6od.net] 商用で使えるフリーの開発環境ってありますか?
728 名前:デフォルトの名無しさん (ワッチョイ 39dc-yaSi) mailto:sage [2016/12/03(土) 17:42:27.55 ID:x7z2pgeG0.net] >>715 小規模な企業までならVS Communityが商用利用可 Communityが使えない規模ならVS Express
729 名前:デフォルトの名無しさん (ワッチョイ 8d4a-JWTN) mailto:sage [2016/12/03(土) 21:57:51.27 ID:NEbgZC1U0.net] >List<T>も2次元にはできないが、そもそも2次元にする必要がない list<list<T>>で二次元じゃあないの?
730 名前:デフォルトの名無しさん (ワッチョイ 839d-5gNI) mailto:sage [2016/12/03(土) 22:06:20.99 ID:n86jitUO0.net] 広義の二次元だけど狭義の二次元ではない、かな 多次元配列とジャグ配列で呼び分けるから
731 名前:デフォルトの名無しさん (ワッチョイ 1ee1-yaSi) mailto:sage [2016/12/03(土) 22:51:22.62 ID:1XG4MZmv0.net] >>713 その程度なら自分で実装すればよくね?
732 名前:デフォルトの名無しさん (ワッチョイ 6b0d-BRVC) [2016/12/03(土) 23:02:24.03 ID:nNmCZ+K50.net] TreeViewでファイルエクスプローラーを作りましたが ファイルやフォルダの数が多すぎると必ずフリーズします 例えば肥大化した"C:\Windows\WinSxS"を表示するにはどうしたらいいですか?(私の環境ではサブフォルダ数が1万数千あります)
733 名前:デフォルトの名無しさん (ワッチョイ f4ce-BRVC) mailto:sage [2016/12/03(土) 23:27:08.60 ID:55Oi6B7P0.net] >>720 そもそも1万件とか画面に一度に表示できる数じゃないんだから 一部だけ出すとか表示方法を工夫する以外にないよ 既存のファイラーとかを参考にしてみたらどうかね
734 名前:デフォルトの名無しさん (ワッチョイ f4cb-yaSi) mailto:sage [2016/12/04(日) 00:29:04.69 ID:tP3D55j/0.net] >>720 開いたフォルダのみ中身を表示してはどうだろうか?
735 名前:デフォルトの名無しさん (ワッチョイ 5c7b-BMT5) [2016/12/04(日) 20:20:27.84 ID:HFDVK7VF0.net] Rxをテストしようとおもうのだが、 using System.Reactive.Linq; これを追加しても エラー CS0234 型または名前空間の名前 'Reactive' が名前空間 'System' に存在しません (アセンブリ参照があることを確認してください)。 となる。参照を探してもmscore.libしかないがこれをチェックすると 「すでにビルドに組み込まれているのでエラー」になる。 どうしたらいいの?
736 名前:デフォルトの名無しさん (アウアウカー Sa05-F2U0) mailto:sage [2016/12/04(日) 20:35:11.66 ID:iX2mGjzba.net] Rxはインストールしたの? 標準ではないよ
737 名前:デフォルトの名無しさん (ワッチョイ 5c7b-BMT5) [2016/12/05(月) 06:04:42.72 ID:kVcVuvgX0.net] VS Community 2015で Nuget パッケージマネージャー画面でSystem.Reactiveをインストールしようと する 設定は参照にして、パッケージソースは「すべて」 Nuget.org packagesource Microsoft and .NET Microsoft Visual Studio Offline Package にしている。 '.NETFramework,Version=v4.5.2' を対象とするプロジェクト 'WpfApp1' に関して、 パッケージ 'System.Reactive.3.1.1' の依存関係情報の収集を試行しています Unable to load the service index for source packagesource. この要求の送信中にエラーが発生しました。 リモート名を解決できませんでした。: 'packagesource' ========== 終了 ========== インストールできない。 packagesource. このエラーが出るのはパッケージマネージャの設定に 間違いがあるんだろうか?
738 名前:デフォルトの名無しさん (ワッチョイ 5c7b-BMT5) [2016/12/05(月) 07:19:43.60 ID:kVcVuvgX0.net] PM> Install-Package System.Reactive Install-Package : ソース '' 内でパッケージ 'System.Reactive' が見つかりません。 つまりパスが違っている。DefaultPathはどこに設定するのだろうか?
739 名前:デフォルトの名無しさん (ワッチョイ 5c7b-BMT5) [2016/12/05(月) 07:22:18.16 ID:kVcVuvgX0.net] あれっ、頭にきてボタンを押しまくっていたらインストールできた。 なぜだ? わからんが、とにかくインストールできた。手当たり次第に 出たらめにやるのがいいみたいだ。
740 名前:デフォルトの名無しさん (アウアウオー Sabe-wK09) mailto:sage [2016/12/05(月) 21:52:16.25 ID:7n2NXvP5a.net] 「n = n + 1」「n++」「n += 1」 の中で速度が速い、またはメモリの消費が少ない手段はどれですか? 今回の使用目的はループ内でのカウンタです また、それぞれの使い分けがわからないので適切な使用箇所があれば教えてください
741 名前:デフォルトの名無しさん (ワッチョイ 9213-ggLi) mailto:sage [2016/12/05(月) 21:55:01.48 ID:+86vS9TV0.net] >>728 差はないから好きにすればいい
742 名前:デフォルトの名無しさん (ワッチョイ 467d-NTgB) mailto:sage [2016/12/05(月) 22:28:32.97 ID:k7XpTrID0.net] ++はコピーが入る
743 名前:デフォルトの名無しさん (ワッチョイ 4d7b-1jzX) mailto:sage [2016/12/05(月) 22:44:22.01 ID:VOjnBi1e0.net] 出たな、半可通
744 名前:デフォルトの名無しさん (オッペケ Sr8d-E9Xg) mailto:sage [2016/12/06(火) 02:55:06.76 ID:4zSpj2YCr.net] >>727 VSのnugetのインストーラが古いので更新する必要がある場合がある。
745 名前:デフォルトの名無しさん (アウアウカー Sa67-OnqS) mailto:sage [2016/12/09(金) 10:45:19.60 ID:0JyYFlmma.net] >>728 cpy add 1 mov inc add 1
746 名前:デフォルトの名無しさん (JP 0H5f-l58V) mailto:sage [2016/12/09(金) 10:50:44.15 ID:u4ONmpntH.net] それだけで文にするならどうせ最適化されるでしょ 部分式として使ってるならしらんけど
747 名前:デフォルトの名無しさん (ワッチョイ 07ce-3ple) mailto:sage [2016/12/10(土) 21:08:20.94 ID:9pHrXFRT0.net] カウンタならどうでもいいけど インデックスとして使うならunsafe付けてポインタ扱った方がいい
748 名前:デフォルトの名無しさん (ワッチョイ d349-mlnL) mailto:sage [2016/12/10(土) 21:20:26.17 ID:THyFY8cN0.net] そんなのが必要になる場合は限られる。 初心者スレでunsafeを気軽に進めない方が良い。
749 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/10(土) 21:36:24.82 ID:MAlDTlrl0.net] fixedはpinのオーバーヘッドがあるから頻繁に使うとかえって遅くなるよ
750 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 06:33:33.19 ID:caNoEqSZ0.net] >TreeViewでファイルエクスプローラーを作りましたが >ファイルやフォルダの数が多すぎると必ずフリーズします >例えば肥大化した"C:\Windows\WinSxS"を表示するにはどうしたらいいですか? >(私の環>境ではサブフォルダ数が1万数千あります) 自分もこれで悩んでる。1分ごとに測定したデータが1ファイルごとに1年分ある。 60x20x360=43万ファイル これをGetFilesでファイル名を取り出して集計処理しようとするとファイル読み出しで ハングする。 やり方がよくわからないので先輩に聞いたら 「Application.EentDoを入れたらキーが効くのでハングしないよ」 というアドバイスをもらってやってみたが、ダメだった。 で自分で少し調べてみたんだが、 UIの同一スレッドでこれをやると原理的にだめ。処理が重すぎてかならずハングする。 スレッドを分ける方法として、タスクプールを使う方法とスレッド生成がある。 タスクプールを使うのがよい。Async/Await というところまでは分かったんだが、どうやって実現したらいいのかまだよくわからん。
751 名前:デフォルトの名無しさん (ワッチョイ 07d4-QGPA) [2016/12/11(日) 06:47:31.93 ID:fUQnV1N+0.net] 非スタティックなメソッドを呼び出したい場合に、 new クラス名.メソッド名(); とするのはなにか問題があるのでしょうか?
752 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 08:40:31.81 ID:caNoEqSZ0.net] >739 それはコンパイルエラーになるから問題ないと思うが、、、
753 名前:デフォルトの名無しさん (ワッチョイ ebdc-6LJV) mailto:sage [2016/12/11(日) 09:12:08.77 ID:xUW3RgdE0.net] >>739 new クラス名().メソッド名(); の間違いと仮定した上での回答だが、 毎回必ずそのパターンで使用されるのであれば実質staticメソッドと変わらないからstaticメソッドにすることも検討すべき パラメータが複雑な場合にBuilderパターンとFluentなスタイルを組み合わせて、 new Request().WithEncoding(UTF8).with…().Send(); みたいにするのは丁寧に作られてるライブラリだとよくあるけど
754 名前:デフォルトの名無しさん (ワッチョイ 07cb-1E9w) mailto:sage [2016/12/11(日) 09:24:54.90 ID:G916gL+V0.net] >>738 仕様が決まってない問題をAPIの問題にすり替えてる 超たくさんファイルがあるとき結局どうしたいの? 全部表示したいの?一部表示したいの? ユーザに指定させて表示したいの?
755 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 09:42:50.42 ID:caNoEqSZ0.net] 仕様は明白だとおもうが、、、 TreeView表示と同じだが、ファイルを読みだしてグラフ表示しながら同時にファイル 読み出しとその集計処理もやる必要がある。 100ポイントづつを読みだして処理して表示する。 続きを100ポイント読みだして処理して表示する。 このようにシングルスレッドのなかで実現できれば、それが最も良い。 しかし、処理を分割するのはGetFilesのようなライブラリを 使う場合は中断して途中から再開は不可能だ。 そこで、GetFilesは別タスクで動かして非同期処理をするパイプを作ればいい。 task1 thread data = getfiles(); FIFO.add(data); UI thread tree.add( FIFO.read()); というのが検討中の内容だ。
756 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/11(日) 09:42:54.26 ID:xUW3RgdE0.net] >>738 の場合は小手先のコーディングでどうするという問題じゃなくて SparkとかHiveとか使えばいいんじゃないか
757 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 09:51:31.24 ID:caNoEqSZ0.net] それちょっと調べてみるが、C#にキューってのがあるが、それじゃだめなの?
758 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/11(日) 09:54:31.80 ID:xUW3RgdE0.net] >>745 抽象度が全然違う ちゃんとしたビッグデータ処理基盤を使えば、 データを全部HDFSに放り込んでおきさえすれば簡単にデータセット全体にクエリがかけられる いちいち要件に応じて作り込まなくていい
759 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 09:55:28.07 ID:caNoEqSZ0.net] >744 そんな商用ツールは見掛け倒しと思って間違いない。第一広まらないy。
760 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/11(日) 09:58:51.14 ID:xUW3RgdE0.net] >>747 オープンソースだしデータ処理の世界じゃクソ有名だよ? 脊髄反射で拒否する前にちょっとは新しいことに興味持ってみてもいいんじゃないかな、 余計なお世話かもしれないけど
761 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 10:05:36.19 ID:caNoEqSZ0.net] えっ、オープンソースなのか。俄然興味がわいてきた。w
762 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 10:07:25.47 ID:caNoEqSZ0.net] 普通のDBに比べてSpark、Hiveは何がいいの?
763 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 10:12:32.86 ID:caNoEqSZ0.net] グラフ表示するような案件だとSpark SQLがいいみたいだね。 速い。
764 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/11(日) 10:16:20.28 ID:xUW3RgdE0.net] >>750 ざっくりいえば大量データのバッチ処理が速い レイテンシが大きいのでリクエストをリアルタイムに処理して結果を返すようなものには向いていない
765 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 10:33:30.52 ID:caNoEqSZ0.net] C#を最近勉強をはじめたばかりだが、これはすごい言語だな。まさにアルゴリズムの最高哲学 という印象を受けた。これは面白い。 しかし目移りしてどこから取り掛かったらいいのか困る。VBをチョロっとしか経験がないので C#には新しい概念がありすぎてミクロ的にもマクロ的にはほんとに目移りする。 LINQ、WPF、RX、ざっとみたところだ。 いままだ右も左もわからないので取り合えず。適当にReactive Extention からマスターして みようと思っているが、、、、
766 名前:デフォルトの名無しさん (ワッチョイ 0b7b-ymeu) mailto:sage [2016/12/11(日) 11:12:34.07 ID:n3GfLzAe0.net] >>739 newより.の方から優先順位が高いので その例ではクラス名.メソッド名 のスタティックメソッドを呼び出して、その戻り値をnewする事になる なので、newをカッコでくくる (new Date).toISOString();
767 名前:デフォルトの名無しさん (ワッチョイ 0b7b-ymeu) mailto:sage [2016/12/11(日) 11:13:40.49 ID:n3GfLzAe0.net] ああ、すまん、Javascriptスレと間違えてたわ
768 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/11(日) 11:16:14.04 ID:xUW3RgdE0.net] Rxはマイナーな技術だしasync/awaitがわかってれば十分カバーできるからスルーでOK WPFも終わった技術だから今更要らない 専業コーダーじゃないんなら小手先の技術に拘るのはほどほどにして マイクロサービス的な連携だとかクラウド活用だとかもっとマクロな領域へシフトしていった方がいいと思うよ
769 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 13:36:37.71 ID:caNoEqSZ0.net] >756 言わんとするところはよくわかる。考え方の本質は同じだとおもう。 できれば楽にプログラムをしたい。 WPFは終わったのだろうか? たしかに流行ってないよね。w でもMVVMの考え方は間違っていないと思う。 Rxはマイナーな技術なんだろうか? 応用できる範囲がどの程度あるのか はよくわからない。 LINQには少なからず衝撃を受けたので、Push型のRXはなにかとてつもない発見 がありそうな予感がする。 もっともLINQというよりはIEnubableとかデザインパターンの考え方に衝撃を受けた。 マクロ的な技術を使う上でもミクロをある程度は理解していないと、無駄な使い方 をしてしまう可能性があるように思う。その意味では細部まで100%理解しよう なんて思わないが、60%くらいは理解しておきたい。
770 名前:デフォルトの名無しさん (ブーイモ MM07-caEn) mailto:sage [2016/12/11(日) 13:48:02.76 ID:Z923MDQCM.net] ネタや実験以外でRxなんて使ってる現場存在するのか
771 名前:デフォルトの名無しさん (ワッチョイ 5b79-pq3j) mailto:sage [2016/12/11(日) 14:07:20.29 ID:bG1axWcs0.net] フロントならangularについてくるから使うけどC#では使ったことない
772 名前:デフォルトの名無しさん (ワッチョイ 5b79-pq3j) mailto:sage [2016/12/11(日) 14:12:00.35 ID:bG1axWcs0.net] angularでもRxはtoPromiseしか使わないから使ってないような物か
773 名前:デフォルトの名無しさん (ワッチョイ d349-mlnL) mailto:sage [2016/12/11(日) 14:12:51.19 ID:31wztqOV0.net] >>743 GetFiles()って、Directory.GetFiles()のこと? それだったら、代わりにDirectory.EnumerateFiles()を使えば逐次処理出来るよ。
774 名前:デフォルトの名無しさん (ワッチョイ d349-mlnL) mailto:sage [2016/12/11(日) 14:29:28.43 ID:31wztqOV0.net] >>739 恐らく、やりたいのは (new クラス名).メソッド名(); ってことだと思うけど、何度も使う場合は毎回newすることになるので非効率。 また、IDisposeなクラスの場合はDispose()を呼べない。 上記2つに問題ないなら使っても構わない。staticメソッドにすべきだけどね。
775 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 14:49:28.21 ID:caNoEqSZ0.net] >それだったら、代わりにDirectory.EnumerateFiles()を使えば逐次処理出来るよ。 それなかったな。 会社がVs2008なのでw Vs2008で.net Framework4.5とかつかえるんだろうか?
776 名前:デフォルトの名無しさん (ブーイモ MM07-caEn) mailto:sage [2016/12/11(日) 14:58:46.78 ID:Z923MDQCM.net] なきゃ実装すればいい
777 名前:デフォルトの名無しさん (ワッチョイ cb5b-w4ID) [2016/12/11(日) 14:59:38.20 ID:PxfwJXGz0.net] こんな感じで構造体配列の中身をIntPtrにコピーしたいんですが どういう方法がありますか? struct A{ int x=0,y=1,z=2; } A a = new A(); IntPtr ptr; Marshal.StructureToPtr(a, ptr, false);
778 名前:765 (ワッチョイ cb5b-w4ID) mailto:sage [2016/12/11(日) 15:00:53.89 ID:PxfwJXGz0.net] >>765 すいません。領域確保(AllocCoTaskMem)のところは省略してます。
779 名前:デフォルトの名無しさん (オッペケ Sr27-w4ID) [2016/12/11(日) 15:40:06.69 ID:pNKp5sE/r.net] List<string> list = new List<string>() {"hage", "namahage"}; List<string> list = new List<string> {"hage", "namahage"}; どっちもいけるんだけどどう違うの?
780 名前:デフォルトの名無しさん (ワッチョイ 07cb-1E9w) mailto:sage [2016/12/11(日) 15:41:48.31 ID:G916gL+V0.net] >>743 でも現実には処理が間に合わないわけじゃん それでも一気に表示する仕様は変えないのか? エクスプローラーではできてるのか?とか Windowsのコピーって動作だって早く終われば進捗ウィンドウなんて出さないけど 長くかかれば進捗ウィンドウが出てくるわけよ
781 名前:デフォルトの名無しさん (ワッチョイ d349-mlnL) mailto:sage [2016/12/11(日) 15:48:11.13 ID:31wztqOV0.net] >>763 肝心な条件を後だしとか酷いな。 Directory.EnumerateFiles()は.Net 4からだけど、VS2008は.Net3.5までだな。 .Net3.5じゃ、Async/AwaitどころかTaskも使えないぞ。 >>739 で用語が混じってるけど、スレッド/スレッドプール/タスクね。
782 名前:デフォルトの名無しさん (ワッチョイ d349-mlnL) mailto:sage [2016/12/11(日) 15:55:26.64 ID:31wztqOV0.net] Directory.GetFiles()は全てのファイルを取得するまで処理が戻ってこないから、バックグラウンド処理にした所で結局待たされる。 逐次処理がしたいなら、Win32API使ってDirectory.EnumerateFiles()のようなものを独自実装するしかないな。
783 名前:765 (ワッチョイ cb5b-w4ID) [2016/12/11(日) 17:07:16.26 ID:PxfwJXGz0.net] こんな風に構造体の配列の要素ひとつずつをIntPtrで確保した領域にコピーしようと したのですが、こういう方向性では無理ですか? IntPtr ptr = Marshal.AllocCoTaskMem(Marshal.SizeOf(typeof(A))*a.Length); for(int i = 0; i < a.Length; ++i){ Marshal.StructureToPtr(a[i], ptr+i*size, false); }
784 名前:765 (ワッチョイ cb5b-w4ID) mailto:sage [2016/12/11(日) 17:20:36.88 ID:PxfwJXGz0.net] >>771 あーこれで問題なくいけてましたwお騒がせしました。
785 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 17:56:21.30 ID:caNoEqSZ0.net] >770 そういうことか。 それでDoEventが聞かなかったんだね。 >769 Net4をダウンロードして、参照すればいいだけかとおもっていたが むりか?
786 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 18:00:11.20 ID:caNoEqSZ0.net] >770 System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(@"C:\test"); System.IO.FileInfo[] files = di.GetFiles("*.txt", System.IO.SearchOption.AllDirectories); //ListBox1に結果を表示する foreach (System.IO.FileInfo f in files) { ListBox1.Items.Add(f.FullName); ここでキューにいれればいいやん。 }
787 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 18:06:46.94 ID:caNoEqSZ0.net] >でも現実には処理が間に合わないわけじゃん >それでも一気に表示する仕様は変えないのか? キューから取り出して表示するんなら、UIがわで順次表示できるよ。 問題はUIで超重たい処理がはいるのでハング状態になるということだけ でしょ。 UIが動けば、ブレーク中断したり任意にできる。
788 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/11(日) 20:18:29.55 ID:caNoEqSZ0.net] SparkはC#サポートしてないよ。C#からどうやってつかうの?
789 名前:デフォルトの名無しさん (ワッチョイ ebdc-6LJV) mailto:sage [2016/12/11(日) 22:29:10.18 ID:xUW3RgdE0.net] そんなもん別プロセスでやりゃいいでしょ パラメータや結果の受け渡しはRPC(IPC)使ってもいいけど、今回の要件ならファイルベースでもオーバーヘッドは全く無視できる
790 名前:デフォルトの名無しさん (ワッチョイ 07cb-1E9w) mailto:sage [2016/12/11(日) 22:30:49.68 ID:G916gL+V0.net] 一個一個入れて描画されてるから遅かったりして?
791 名前:デフォルトの名無しさん (ワッチョイ d723-xm+r) mailto:sage [2016/12/12(月) 01:48:31.95 ID:jfe+O/Es0.net] >>771 .NET 4.0以降ならこういうのもあるよ、Marshal.AlignedSizeOf<T>()でアライメントされるが https://msdn.microsoft.com/ja-jp/library/system.runtime.interopservices.safebuffer 派生クラスでhandleに確保済みポインタを設定し、Initialize<T>()等でポインタ領域も指定 StructureToPtrはジェネリックメソッドでさえも非ジェネリックのラッパーっぽいので パフォーマンスは期待できない、unsafeで良ければ構造体ポインタ使った方が良いかもね
792 名前:デフォルトの名無しさん (ワッチョイ cb5b-w4ID) mailto:sage [2016/12/12(月) 02:20:55.85 ID:JnfesTFd0.net] >>779 おぉ〜情報ありがとうございます! なるほどそういうのもあるんですね。 教えて頂いた事を参考にさせて頂いてどうやるかもうちょっと考えてみます。
793 名前:デフォルトの名無しさん (ワッチョイ ebdc-6LJV) mailto:sage [2016/12/12(月) 06:39:25.29 ID:w8oqDcFY0.net] bittableな構造体ならマネージ配列にGCHandleを割り当ててAddrOfPinnedObjectという手もあるよ unsafeならfixedステートメントがだいたい等価 いちいちアンマネージなバッファを割り当てたり更新内容をマネージコードに書き戻したりしなくていいから楽
794 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/12(月) 08:05:25.67 ID:Jwz8x4f60.net] >そんなもん別プロセスでやりゃいいでしょ >パラメータや結果の受け渡しはRPC(IPC)使ってもいいけど、今回の要件なら >ファイルベースでもオーバーヘッドは全く無視できる 全然意味がわからない。C#でCSVを作ったとして 1.C#からScalarにクエリを送信して、 2.Sparkの処理終了を待つ 3.結果を受信する。 これをC#でプログラムして、Scalarでもプログラムするってこと? 言うのは簡単だが、、、、例でもなきゃ調べてプログラムするのに1週間はかかりそう。w 本質的な情報が欠落しているとおもうよ。こんなのは初心者には全然意味がわからない。
795 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/12(月) 08:06:12.67 ID:Jwz8x4f60.net] >777 こういうのを使えってことだろうか? Mobius: C# API for Spark
796 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/12(月) 08:10:10.92 ID:Jwz8x4f60.net] var lines = sparkContext.TextFile(@"hdfs://path/to/input.txt"); var words = lines.FlatMap(s => s.Split(' ')); var wordCounts = words.Map(w => new KeyValuePair<string, int>(w.Trim(), 1)) .ReduceByKey((x, y) => x + y); var wordCountCollection = wordCounts.Collect(); wordCounts.SaveAsTextFile(@"hdfs://path/to/wordcount.txt"); こんな感じでC#からSparkをコントロールしたいのだが、もっとも一般的で初心者向け な簡単な方法はなにでしょうか?
797 名前:デフォルトの名無しさん (ブーイモ MM2f-6LJV) mailto:sage [2016/12/12(月) 08:30:36.13 ID:FdLiOBdBM.net] >>784 それを普通にScalaかPythonかJavaで書いてC#からProcess.Startで呼べばいい なんでもC#でやる必要ない
798 名前:デフォルトの名無しさん (オッペケ Sr27-l58V) mailto:sage [2016/12/12(月) 11:23:30.02 ID:FEnMQE8Ar.net] 誰も>>767 に答えられないの?
799 名前:デフォルトの名無しさん (ブーイモ MM2f-6LJV) mailto:sage [2016/12/12(月) 11:31:59.68 ID:FdLiOBdBM.net] >>786 違いはない
800 名前:デフォルトの名無しさん (アウアウオー Sa3f-ff1P) mailto:sage [2016/12/12(月) 11:55:48.82 ID:DdSBjDaJa.net] どうでもいいけどここにちゃんとした説明があるな https://msdn.microsoft.com/ja-jp/library/bb308966.aspx#topic12
801 名前:デフォルトの名無しさん (ワッチョイ 277b-gb6D) [2016/12/12(月) 14:45:07.46 ID:Jwz8x4f60.net] >785 なるほど。 傾向を掴むだけの場合にはいいけれども、アプトプットの表現を加工したいような 場合にはやはりC#でないと、、、となって結局はC#が必要になるような気がする。 JavaもC#も言語的にはそんなに変わらないが、インテリセンスのないようなIDE では作業できないと思わないか? Scalaとか触ってはみたがインテリセンスがないのでこれでは使えない。 インテリセンスがあればうろ覚え程度でもなんとかなる。
802 名前:デフォルトの名無しさん (ワッチョイ b741-mm6H) [2016/12/12(月) 15:32:39.38 ID:9sS+uj7w0.net] 未指定だと Javaはpublicに C#はprivateになるのは かなりデカイ違い
803 名前:デフォルトの名無しさん (ワッチョイ 5b79-pq3j) mailto:sage [2016/12/12(月) 15:56:55.39 ID:snQzvIqt0.net] >>790 javaはppだぞ
804 名前:デフォルトの名無しさん (ワントンキン MMef-g0tO) mailto:sage [2016/12/12(月) 16:46:36.53 ID:cpVlzpwxM.net] peek to peek ?
805 名前:デフォルトの名無しさん (ワッチョイ 5b79-pq3j) mailto:sage [2016/12/12(月) 17:00:27.95 ID:snQzvIqt0.net] package private
806 名前:デフォルトの名無しさん (ブーイモ MM47-caEn) mailto:sage [2016/12/12(月) 18:52:15.45 ID:VeOEVzI1M.net] えっJavaってIDEにインテリセンスもないのか
807 名前:デフォルトの名無しさん (ワッチョイ 5b79-pq3j) mailto:sage [2016/12/12(月) 19:44:00.02 ID:snQzvIqt0.net] >>794 Ctrl+spaceで出すか、設定からいつでも出るようにしないといけない
808 名前:デフォルトの名無しさん (ワッチョイ 5f73-drn7) mailto:sage [2016/12/12(月) 23:05:44.03 ID:dBjxs9jc0.net] Datatablのフィールドに氏名があったとして Linqで荒川のindex(rowの位置)を取得するにはどう書けばいいのですか?
809 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/12(月) 23:11:46.39 ID:w8oqDcFY0.net] >>796 そんなことはしない データソースに直接クエリするべき
810 名前:デフォルトの名無しさん (ワッチョイ 5f73-drn7) mailto:sage [2016/12/12(月) 23:30:47.31 ID:dBjxs9jc0.net] >>797 indexをforで探して別のフィールドの国語、数学の点を変えるでやっているんだけど forじゃなくてLinqで探せないかなと思って、forよりLinqのが早い?かなと
811 名前:デフォルトの名無しさん (ワッチョイ 6b23-WrC4) mailto:sage [2016/12/12(月) 23:34:13.53 ID:/DQxiOau0.net] >>798 行数が少ないだけでスピードは大して変わらんよ
812 名前:デフォルトの名無しさん (ワッチョイ b790-d424) mailto:sage [2016/12/13(火) 23:38:21.93 ID:3IrbMGrr0.net] カレンダーを作りたいのですがフォームに表示する場合どのコントロールアイテムを使えばいいのかわかりません 使えそうなコントロールアイテムってありますか?
813 名前:デフォルトの名無しさん (ブーイモ MM07-6LJV) mailto:sage [2016/12/13(火) 23:45:34.29 ID:D1DGYHRwM.net] WebBrowserでGoogleカレンダー表示しとけ
814 名前:デフォルトの名無しさん (ワッチョイ b790-d424) mailto:sage [2016/12/13(火) 23:45:54.00 ID:3IrbMGrr0.net] すいません、質問内容を変えます MonthCalenderアイテムのたとえば第1・3火曜日だけを色を変えたりとかってどうやるんでしょうか?
815 名前:デフォルトの名無しさん (ワッチョイ ebdc-Ts63) mailto:sage [2016/12/14(水) 01:12:4
] [ここ壊れてます]
816 名前:7.69 ID:dZsAFSxQ0.net mailto: 簡単な方法はない 出来合いのカレンダーコンポーネントなんかHTMLなら腐るほどあるから 今時WinFormsなんかやめてASP.NET MVCでWebアプリとして作ることをお勧めする [] [ここ壊れてます]
817 名前:デフォルトの名無しさん (ワッチョイ d349-mlnL) mailto:sage [2016/12/14(水) 01:25:03.42 ID:ymoBJubC0.net] 何だろね、この強引なWEB推し。 初心者がいきなりASP.NET MVCとか無理だろ。
818 名前:デフォルトの名無しさん (ワッチョイ 3f19-i2Au) mailto:sage [2016/12/14(水) 01:50:56.59 ID:WNb69LWH0.net] webアプリってあんまり好きじゃない
819 名前:デフォルトの名無しさん (スププ Sd2f-8RvK) mailto:sage [2016/12/14(水) 02:05:02.38 ID:0k2o8obnd.net] デスクトップアプリ作りたい人にWebアプリ薦めるとか頭おかしいだろ
820 名前:デフォルトの名無しさん (ワッチョイ 07cb-1E9w) mailto:sage [2016/12/14(水) 22:24:55.46 ID:AUUgXdZT0.net] あー、どうだろ? 今時、DBにも繋がらないゴミになんか価値あるの? って思う メモ帳ですらgoogleでクラウド化してくれたことでやばいぐらい利便性が上がってる
821 名前:デフォルトの名無しさん (スププ Sd2f-8RvK) mailto:sage [2016/12/14(水) 22:39:26.79 ID:0k2o8obnd.net] >>807 デスクトップアプリがDBに繋がらないって意味分からん
822 名前:デフォルトの名無しさん (ワッチョイ 3faf-i2Au) mailto:sage [2016/12/14(水) 22:46:30.91 ID:iFO9XKWI0.net] デスクトップアプリでDBならSQLiteとかでもOnedriveみたいにファイルを置くだけで同期できるやつを使えば鯖なくても簡単にクラウド化できるし ローカルのファイル書き込みと同じように使えるから初心者でも楽でいいよ
823 名前:デフォルトの名無しさん (ワッチョイ 6b23-WrC4) mailto:sage [2016/12/14(水) 23:01:05.01 ID:4HnH0eA/0.net] >>809 SQLiteは、同時書き込みサポートしていないから、当該アプリケーション専用かつ、二重起動不可にしないと何かと問題起こるでしょ
824 名前:デフォルトの名無しさん (スププ Sd2f-8RvK) mailto:sage [2016/12/14(水) 23:06:38.72 ID:0k2o8obnd.net] >>810 用途に合わせてDB選択すればいいじゃないですか
825 名前:デフォルトの名無しさん (ワッチョイ 34cb-Wqrw) mailto:sage [2016/12/15(木) 00:01:01.86 ID:I51Ec/8p0.net] >>808 クラウド的な意味で なんでもネットに繋げて見るべきだと思うな俺は
826 名前:デフォルトの名無しさん (スププ Sdb8-WTZK) mailto:sage [2016/12/15(木) 00:37:49.10 ID:R3vgAk4Qd.net] >>812 ?