0

アプリケーションにスレッド プーリング システムを実装しようとしています。各スレッドが、私が使用しているスレッド プール構造へのポインタを持っていることを望みます。したがって、基本的には、次のような 2 つの構造があります。

typedef struct thread_pool {
    /* some fields here */
    single_thread **tds;
} thread_pool_t;

typedef struct single_thread {
    /* some fields here */
    thread_pool_t *tp;
} single_thread_t;

宣言の順序に関係なく、コンパイラはエラーを返します。最初の構造の前に2番目の構造を宣言することを解決しましたが、空であると宣言しました。エラーは発生しなくなりましたが、常に次の警告が表示されます。

serv_inc/thrhandler.h:23:16: warning: useless storage class specifier in empty declaration [enabled by default]

この警告を回避して同じ結果を得る方法はありますか? 私はそれを間違っていますか?この問題に対するより効率的な解決策はありますか?

4

1 に答える 1

6

これは私のために働く:

typedef struct thread_pool thread_pool_t;
typedef struct single_thread single_thread_t;

struct thread_pool
{
    single_thread_t **tds;
};

struct single_thread
{
    thread_pool_t *tp;
};
于 2013-06-12T15:34:11.953 に答える