1

Android NDK には lockf() 関数がありません。Android NDK で CUPS をコンパイルしているときに、lockf() が見つからないというエラーが発生しました。したがって、NDK の lockf() に似た関数を作成する必要があります。そのような関数を作成するのを手伝ってください。

どんな助けでも大歓迎です。

PS:私は初心者です

4

2 に答える 2

1

これは、別の Google プロダクトがそれを処理する方法です

// The lockf() function is not available on Android; we translate to flock().
#define F_LOCK LOCK_EX
#define F_ULOCK LOCK_UN
inline int lockf(int fd, int cmd, off_t ignored_len) {
    return flock(fd, cmd);
}

https://src.chromium.org/svn/branches/1312/src/base/os_compat_android.h

于 2014-06-11T18:45:07.463 に答える
0

Android ではアクセス許可の管理が制限されているため、lockf() を実装したとしても、それを使用する際に問題が発生することがあります。通常、2 つのプロセスの両方が同じディレクトリに対して読み取り/書き込み権限を持つことはありません。つまり、このファイルをロックするディレクトリがありません。

于 2012-04-25T02:55:27.300 に答える