Я сейчас создаю распределенное приложение. Поскольку в настоящее время у меня нет нескольких хостов, я создаю эту программу локально с различными процессами, используя общую память для IP C, используя семейство функций ftok
, shmget
. Поскольку я использую их для симуляции функций, мне любопытно, что происходит, когда у меня есть общий сегмент, доступ к которому осуществляется с использованием того же параметра path
с другим параметром proj_id
для ftok
. Например:
/* process 1 */
key_t mem_key = ftok("shmfile", 60);
/* process 2 */
key_t mem_key = ftok("shmfile", 66);
Теперь, будут ли они создавать ключи для двух разных сегментов разделяемой памяти, или один из ключей будет недействительным, поскольку параметр пути совпадает?