LINUX.ORG.RU

История изменений

Исправление Zubok, (текущая версия) :

while (1) {}

Вот это плохо. В цикле вычитывай сообщения, то есть делай XNextEvent (dpy, &xev);, но просто сообщения не обрабатывай. тогда он у тебя в select() повиснет и процессор жрать не будет.

Это вроде тебе не нужно, если ты события никакие не обратываешь.

    XISetMask (mask_bits, XI_BarrierHit);
    XISetMask (mask_bits, XI_BarrierLeave);
    mask.deviceid = XIAllMasterDevices;
    mask.mask = mask_bits;
    mask.mask_len = sizeof (mask_bits);
    XISelectEvents (dpy, window, &mask, 1);

Исходная версия Zubok, :

while (1) {}

Вот это плохо. В цикле вычитывай сообщения, то есть делай XNextEvent (dpy, &xev);, но просто сообщения не обрабатывай. тогда он у тебя в select() повиснет и процессор жрать не будет.

    XISetMask (mask_bits, XI_BarrierHit);
    XISetMask (mask_bits, XI_BarrierLeave);
    mask.deviceid = XIAllMasterDevices;
    mask.mask = mask_bits;
    mask.mask_len = sizeof (mask_bits);
    XISelectEvents (dpy, window, &mask, 1);

Это вроде тебе не нужно, если ты события никакие не обратываешь.