以下に示すように、関数から一意のトランザクションIDを要求するために複数のスレッドを必要とするアプリケーションをCで作成しています。
struct list{
int id;
struct list *next
};
function generate_id()
{
linked-list is built here to hold 10 millions
}
2つ以上のスレッド間で同期して、ミューテックスを使用せずにそれらのスレッド間でトランザクションIDを一意にするにはどうすればよいですか?
リンクリストを別のものに変更する必要がある場合でも、何でも共有してください。