問題タブ [perfect]
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.
swift - Swift 3 Linux with Perfect: 間隔を指定してスケジュールされたタイマーを runLoop に追加する
Perfect
ライブラリを使用して、Ubuntu (Ubuntu 15.10 wily、Swift swift-3.0.1-RELEASE) で Swift でアプリケーションを作成しようとしています。
X 秒ごとに呼び出される関数が必要です。そのために、モジュールのTimer
クラスをFoundation
使用しています:
このコードでいくつかの解決策が見つかりましたが、コンパイルは失敗しました:
クラスを拡張しているNSObject
場合、または引数を削除した場合の別のコンパイル エラーtimer
:
セレクターを使用しない他の宣言を使用しようとしました:
コンパイルは機能しますが、2 番目のプリントは呼び出されません。また、タイマーを現在のに手動で追加しようとしましたRunLoop
:
二度と呼び出されません(そしてtimer.fire()
、私の関数を1回だけ呼び出します)。そして最後に:
私のメッセージ"MyTimer.onTimer"
は 5 回表示されますが、私のサーバー (Perfect ライブラリを使用) は最後にしか開始されません。
何を試せばいいのかわからない。パーフェクトライブラリの問題かもしれませんが、悩みを解決するものが見つかりません。新しいスレッドを実行して、タイマーを開始することもできますが、少し複雑になりますか?
swift - Swiftサーバーで同期または非同期(パーフェクト)
Perfect Framework を使用して Swift 3.0 サーバーを作成しました。すべてが期待どおりにうまく機能しますが、いくつかのことを行うためのより良い方法があるかどうかを学ぼうとしています.
iOS のバックグラウンドから来て、私は常に別のスレッドでブロッキング関数を呼び出すことを知っています。サーバーで開発する場合、これはまだ保持されますか?
たとえば、長いブロッキング タスク (別のリクエストを作成したり、大規模なデータベース クエリを実行したりするなど) がある場合、それを同期的に呼び出すことに違いはありますか。
または、これを非同期で行う必要がありますか?
ios - Swift 3 Perfect 2.0でディスパッチキューを使用する
Swift Perfect 2.0 を使用しており、10 秒後に関数を呼び出す必要があります。次のコードを使用して、通常の iOS アプリケーションで動作させることができます。
しかし、私はこれを迅速に完璧に行うことができず、回避する方法がわかりません。これは私のリクエストの構造です:
response.completed()の前に配置しても、sendNotifications()を呼び出すことはありません。おそらく間違っていると思います。だから私の質問は、パーフェクト 2.0 で Dispatchqueues を使用する他の方法はありますか? それらは機能していないようです。