rrdtool c APIのrrd_update_r関数をhttp://oss.oetiker.ch/rrdtool/index.en.htmlから呼び出す方法を知ってもらえますか?threadsafe rrd_update_rを呼び出す方法C APIを使用したRound Robinデータベース関数ですか?
...
通常rrd_update rrd_updateの非スレッドセーフバージョンを呼び出すことは非常に簡単でしたが、この1つは、よりトリッキーです:プログラムの開発は、マルチスレッドで実行する必要があるため
char *updateparams[] = {
"rrdupdate",
rrd_file,
values,
NULL
};
rrd_clear_error();
result = rrd_update(3, updateparams); //argc is first arg
環境私はthreadsafe関数を使用しないことでいくつかのエラーが発生しました! しかし、それはあまりにもテンプレートを必要とするため、...、
int rrd_update_r(const char *filename, const char *_template,
int argc, const char **argv);
rrd_update_rを使用するのは容易ではないと私は実際に動作しませんどのように作成する...
char *updateparams[] = {
"rrdupdate",
rrd_file,
values,
NULL
};
rrd_clear_error();
result = rrd_update_r(rrd_file, NULL,3, updateparams);
見当がつかないそれを実行すると、次のエラーが発生します...
error: /var/tmp/rrds/1.rrd: expected timestamp not found in data source from rrdupdate
誰かが私を助けてくれることを願っています!ソースコードを見て
THXおよびBR、 roegi
私はあなたがhttp://oss.oetiker.ch/rrdtool/prog/rrdthreads.en.htmlを見ていたと思いますか?残念ながら、 'rrd_update_r'は言及していません。 – evnu
はい私はrrdthreads.en.htmlを見ましたが、rrd_update_rは参考実装として( "例としてrrd_update_rを参照してください)参照してください。 – roegi