問題タブ [dup]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Python:fork、pipe、exec
Pythonアプリケーションでプログラムを実行したいのですが、バックグラウンドで実行されますが、最終的にはフォアグラウンドになります。
GUIはそれと対話するために使用されます。ただし、コントロールはstdinおよびstdoutのコンソールを介して提供されます。アプリケーションのGUIを使用して制御できるようにしたいので、最初のアイデアは次のとおりです。
- フォーク
- 親では、それらにアクセスするためにdup2stdinとstdout
- 子を実行する
これはPythonで簡単に実装できますか?私が望むことを達成するための代替方法はありますか、それは何でしょうか?
ruby - ruby19でSTDIN、STDOUT、STDERRを置き換える方法
ruby18 では、フル コントロールのサブプロセスを取得するために次のことを行うことがありました。
これは ruby19 では機能しません。ruby19 では、STDIN、STDOUT、STDERR の close メソッドは、基になるファイル記述子を閉じません。ruby19でこれを行うにはどうすればよいですか。
c++ - Windows8 - _dup、_dup2
プログラムを実行するために win8 Consumer preview build 8250 を使用しています。これは win7 で正常に動作します。プログラムは次のマクロ/関数を使用します。
プログラムは次のことを実行します。
私がそれを実行するたびに、正しい「リダイレクトj」印刷のtmp乱数をファイルに出力します。その後、残りの実行ではファイルは空になります。(acquireOutputStreamでfポインターがNULLになることはありません)正しく。何が問題になる可能性がありますか?win8の既知の問題ですか?
ruby - Rubyのdupメソッドとcloneメソッドの違いは何ですか?
たとえば、Rubyのドキュメント:dup
一般に、
clone
およびdup
は子孫クラスで異なるセマンティクスを持つ場合があります。内部状態をclone
含むオブジェクトを複製するために使用されますが、dup
通常は子孫オブジェクトのクラスを使用して新しいインスタンスを作成します。
しかし、いくつかのテストを行ったところ、実際には同じであることがわかりました。
では、2つの方法の違いは何ですか?
c - ファイル ポインタ/ディスクリプタの保存/複製
グローバル FILE
ポインター/ディスクリプターが必要です。関数の 1 つは、このポインター/記述子から読み取ります。ポインター/記述子に関連付けられた内部ポインターFILE
が進みます。この関数が戻った後、同じポインター/記述子から読み取り、他の関数が読み取ったのと同じデータを読み取りたいと考えています。FILE
しかし、内部ポインターが進んでいるため、まったく同じデータを読み取ることはできません。複製はオリジナルを反映するため、記述子の複製は機能しません。読み取り前にポインターを保存してFILE
も、それはポインターであるため機能せず、再び同じものを参照し始めます。
1 つの代替方法は、読み取り前に使用してファイル位置を保存し、次の読み取りの前にfgetpos()
使用することです。fsetpos()
ただし、これは記述子ではなくファイルポインターに対して機能します。
通常のポインターを使用すると、とても簡単です。FILE
しかし、ポインターを使用すると事態が難しくなります。
これを達成するための他の不器用な方法はありますか?
ruby-on-rails - 関連付けとクリップの添付ファイルを使用して Rails オブジェクトを複製する
いくつかの関連付けを持つオブジェクトがあります。これらの関連付けられたオブジェクトの一部には、S3 に保存されているクリップの添付ファイルがあります。オブジェクトと関連付けを複製すると正常に動作しますが、添付ファイルは複製されません。
これは、画像を取得せずに機能します。
次のような画像リンクを取得しようとしました:
しかし、おそらくすべての画像が設定されているわけではないため、「nilを文字列に変換できません」というエラーが表示されます。
perl - perl パイプラインから「less」を実行する
シェルとほぼ同じ方法で、Perl から任意のパイプラインをセットアップしようとしています。
これには望ましい効果があります。「echo foo | sed s/oo/ar/」のようになります。
ただし、2 番目の引数を「less」にすると、端末が点滅し、ページャーに出力が表示されません。短い閃光を除けば、走る気配がまったくない。
今、私がまったく得られないのは、次のものが「echo foo | less」のように動作することです。
しかし、pipe() の呼び出しが何をしているのかまったくわかりません。最初の引数は「リーダー」で、2 番目の引数は「ライター」です。STDINはどのように「ライター」ですか?
私はこれらすべてに非常に困惑しており、根底にある Unix API について何か基本的なことが欠けているか忘れているのではないかと考えています。
ruby - いつdupを使用し、いつRubyでクローンを使用するのですか?
Ruby の dup メソッドと clone メソッドの違いは何ですか? dup
は、との動作の違いについて説明していclone
ます。しかし、いつ使用するdup
必要があり、clone
代わりにいつ使用する必要がありますか?
clone ではなく dup を使用した理由、またはその逆を使用した理由を説明する実際のプロジェクトの例は、この質問に理想的です。
または、2 つの異なる方法が存在する理由の説明が役立ちます。これは、Ruby の作成者からのステートメント、または Ruby に影響を与えた言語のdup
やのようなメソッドの調査を参照することができます。clone
ruby - インスタンスに複製/クローンを提供するためにRubyクラスで定義するメソッドはどれですか?
classのオブジェクトを指すPointer
単一の attribute を持つクラスがあります。:contents
MyObject
Pointer
自分自身のコピーを作成できるようにしたい。#dup
メソッドはデフォルトで定義されていることを知っていますが、#clone
メソッドはオーバーライドしてディープコピーを作成できると予想されます。しかし、ここでは、コピーが深すぎる必要はありません。だから、私が持っている最初のジレンマは、私#dup
の追加の状態を本当にコピーしたくないので、メソッドをオーバーライドする必要があるので、同じインスタンスPointer
を指す新しい状態を作成するだけですか? または、「想定」されていないためMyObject
、 overridine を控えて、浅いコピーを作成するメソッドでオーバーライドする必要がありますか?#dup
#clone
上記のコメントを歓迎しますが、オーバーライドすることを選択するとしましょう#dup
。私はこれを行うことができます:
しかし、オンラインで、「dupメソッドはinitialize copyメソッドを呼び出す」のようなものを読みました。また、この人はRuby#initialize_clone
で ,#initialize_dup
とについて書いています。#initialize_copy
ベストプラクティスはおそらくこのようなものでしょうか?
それともこんな感じ?
それとも、初心者を混乱させるために書かれたオンラインの暴言を忘れて、#dup
心配せずにオーバーライドする必要がありますか?
#dup
また、 custom を定義せずに呼び出すことができることは理解していますが、別の動作で定義したい場合は#dup
どうすればよいでしょうか?#dup
また、同じ質問が適用されます#clone
-定義しようとする必要があります#initialize_clone
か#clone
?