問題タブ [nstask]
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.
objective-c - NSTask がユーザーの環境から $PATH を取得しない
このメソッドが空の文字列を返す理由がわかりません:
@"git"
引数として渡す代わりに渡すと、期待どおり@"which"
に/usr/bin/which
返されます。したがって、少なくとも原則は機能します。
ターミナルから
だからそれはそこで動作します。
私が考えることができる唯一のことはwhich
、私の環境内のすべてのパスを検索していないということです.
これは私を夢中にさせています!誰にもアイデアはありますか?
編集: これは、NSTask によって正しい環境 ($PATH) が認識されるように、NSTask またはユーザーのシェル (例: ~/.bashrc) をセットアップすることに関するものです。
objective-c - NSTaskの使用:出力を返した後にアプリがフリーズする
こんにちは私は次のコードを持っています:
コードの目的はやや複雑です。otoolを使用してバイナリで使用される共有ライブラリのリストを取得し、sedとawkを使用してそれを機械可読形式にフィルタリングします。テストするために、Mac OSXTextEdit.appのバイナリを使用しました。
問題は、コードが実行されて出力が返されるが、アプリがフリーズすることです。私はそれを一行ずつ調べて、この行が問題であることがわかりました:
data = [[output fileHandleForReading] readDataToEndOfFile];
この行自体は、出力をコンソールに記録してからアプリをフリーズしています。その行の後の他のすべての行を削除してこれを確認しましたが、それでも出力がログに記録されてフリーズします。デバッガーには何もありません。この問題を解決する方法についての提案をいただければ幸いです。
objective-c - NSTask で awk を使用する
この awk コマンドの使用方法:
NSタスクと?/usr/bin/awk を起動パス'NR>1{print $1}'
として、引数として、次に変更する文字列を別の引数として設定しようとしましたが、取得できるのは次のとおりです。
どんな助けでも大歓迎です:)
cocoa - Cocoa でサブプロセスが停止していることを確認する
単純な Web サーバーを実行するサブプロセスを開始するアプリケーションを作成しています。私は NSTask を使用しており、パイプを使用して通信していますが、すべてが多かれ少なかれ問題ないようです。ただし、プログラムがクラッシュした場合、サブプロセスは生きたままになり、次にアプリを起動すると、古いサブプロセスと新しいサブプロセスの間で競合が発生します。所有しているアプリが終了したときにサブプロセスが終了するようにする方法はありますか?
cocoa - OS X 10.6SnowLeopardでのNSTaskの問題
10.6のNSTaskに関する問題を見たり聞いたりした人はいますか?
このコードは昨日は正常に機能しましたが、今日は機能していません。
タスクは本来の動作を実行しますが(出力を確認しましたが、問題ありません)、プログラムはwaitUntilExit
メソッドで無期限に待機します。同様のコードを使用する単体テストがいくつかあります。それらはすべて以前に合格していましたが、昨日現在、機能していません。
cocoa - 大量のデータを渡すときのNSFileHandleNSTaskブロッキングの回避
アプリケーションからのデータのエクスポートを処理するコードが少しあります。XMLでいっぱいのNSStringを取り込んで、PHPスクリプトを介して実行し、HTM1、RTFなどを生成します。ユーザーが大きなリストを持っていない限り、うまく機能します。これは明らかに、NSPipeの8k程度のバッファをオーバーランしているためです。
readPipeとreadHandleで(私は思うに)回避しましたが、writeHandle/writePipeでどのように処理するかわかりません。アプリケーションは[writeHandle writeData:[in...
、gdbで中断しない限り、ビーチボールになります。数秒待ってから続行します。
コードでこれを回避する方法について何か助けはありますか?
objective-c - シェルスクリプトをObjective-CCLIに変換する
持っているかなり長いシェルスクリプトをObjectiveCコマンドラインツールに変換することを計画しています。NSTaskを使用してシェルコマンドを実行することを計画しています(これは大きなスクリプトであり、数千のコピー/移動/削除操作があります)。私の質問は、これらすべてのコマンドを実行するためにNSTaskオブジェクトの割り当てと割り当て解除を継続的に行うと、パフォーマンスが大幅に低下するかどうかです。
NSTaskを使用するよりも良い方法はありますか?
ありがとう
objective-c - HTTPヘッダーを返すNSTask
実行中/usr/bin/perl
または/usr/bin/php
NSTaskを介して、プログラムのHTTPヘッダーを取得したいと考えています。環境を適切にフォーマットしましたが(Perlではenv変数のプレフィックスを付ける必要がありますHTTP_
)、どちらのタスクも生の出力以外のものを返しません。NSTaskのドキュメントとphpおよびperlのマニュアルページを確認しましたが、HTTPヘッダーの出力を強制する方法は見当たりませんでした。
何か案は?
編集:これは古代の質問だと思いますが、私はそれを再発見し、報告する必要があることに気づきました。問題は、私が使用すべきだったのであってphp-cli
、ではないということでしphp
た。php-cli
これを期待どおりに機能させるには、ソースからダウンロードしてコンパイルする必要がありました。しかし、一度やってみると、それは魅力のように機能しました。:)
ios - NSTask または iPhone 用の同等品
iOS アプリの一部としてコンパイルして実行したいオープン ソース プロジェクト (gdal) があります。使えると思っていたNSTask
のですが、iOS 3.0 で削除されたようです。また、外部アプリケーションを実行することは他の場所でも見ましたが、これは私のアプリのバンドル内のリソースですが、許可されていません。
iOS アプリケーション内でコマンドライン ツールを実行する方法を見つけた人はいますか?
cocoa - NSPipe および別のプロセスを生成する Perl スクリプトで NSTask を使用する
NSTask オブジェクト内で Perl スクリプトを実行しており、その出力は NSPipe に送られます。通知を使用して定期的に出力を受け取り、GUI を更新しています。
Perl スクリプトは実際には他のプロセスを生成し、その出力はこのパイプに入っていないように見えますが、デバッガー コンソールには表示され、そこで実行されていることがわかります。他のプロセスが終了し、メインのプロセスが再開すると、アプリは再びパイプからの通知を受信し始めます。
これらのプロセスの出力を同じパイプ、または通知を取得できる別のパイプに入れることは可能ですか?
どうもありがとう