Например, если я использую такой класс:
class Class
{
static int f(int a, int b, int c) { return a + b + c; }
int(*A)(int, int, int);
int(*B)(int, int, int);
Class() { A = f; B = f; }
};
Мне сказали, что статическая функция сделает глупую ошибку, если функции A
и B
будут запущены одновременно, но я думаю, что нет другого специального способа определить эти указатели на функции. Действительно ли это создает проблемы в многопоточном программировании? Если да, как мне изменить код, чтобы предотвратить такие несчастные случаи?
Короче говоря, если A
и B
работают одновременно, будет ли другое возвращаемое значение, которое не ожидается?