Спасибо участвовавшим в обсуждении.
Проблем с указателями нет, код был просто для примера.
Пока что решил остановиться на миксинах, но очень не хотелось трогать существующие классы.
Тогда дополнение к вопросу, почему тогда
decltype(*this) s();
Создаёт нужный класс MyClass, а не BaseClassOfMyClass ?
Я пытался вкурить про decltype но так и не понял какие именно правила срабатывают в этих двух случаях.
Kalombyr, это всё те же статусные байты. Проверяйте USB запрос на конечную точку и за раз не получайте больше 64 байтов (или сколько там лимит у конечной точки), запамятовал уже как это реализовано в libusb.
В итоге на первую страницу попали посты с 1 по 10, а на вторую с 16 по 25
напишите, пожалуйста, а какие должны тогда попасть на вторую ?
Смотрите, как я вижу, в чём проблема, если выводить посты, который пользователь не смотрел на предыдущей странице:
Что бы этого избежать можно просто проверять,
перед выборкой что будет на следующей странице:
если на текущей есть просмотренные посты, то на следующую выборку ставить тот же лимит, что и на текущей, а не увеличивать его...
Алексей Коновалов, Прощу прощения, если я что-то не так понял в изначальных условиях...
НО получается ситуация, что если пользователь пролистал пусть 5 страниц и у него образовалось непросмотренных 10 постов то сколько бы он дальше не листал ему всё равно будут предлагаться эти 10 непросмотренных - разве оно так должно работать?
Алексей Коновалов, всё равно не понимаю, зачем Вы исключаете посты если просмотр постраничный?
Посмотрел пользователь или нет уже не имеет смысла при переходе на следующую страницу.
Если Вам нужно после прохода foreach их оставить в массиве, то array_pop выплёвывает элементы, которые удаляет - можете потом обратно вернуть в массив.
Алексей Коновалов, тогда я чёт не понял в чём проблема и какие записи не попадут...
Если вывод у Вас постраничный, то какой смысл тогда убирать из вывода просмотренные посты, т.к. просмотренные окажутся на предыдущей странице и в LIMIT не попадут и без добавления в "visibled" ?
Т.е. если пользователь некоторые посты открыл, а некоторые нет, при этом долистал до конца страницы и нажал следующую, не значит ли это, что он получается просмотрел все и предыдущие ему более не интересны и зачем тогда ему на следующей подсовывать с предыдущей ?
Если ситуация такая, что пользователь может не долистать до конца страницы и например на выводе 40 поста нажать "следующая страница", то запрос изменить на WHERE .... AND post.id >40 LIMIT 30
где 40 айдишник, на котором пользователь остановился при "прокрутке".
Прошу пояснить.
Нужно что бы при вызове из другого потока вызов добавлялся в очередь того потока, без ожидания выполнения и тем более блокирования обоих.
Kalombyr, разве что в настройках адаптера добавить ещё один IP, на него перенаправить основной поток, сами же вешаетесь на него, принимаете и отправляете на соседний.
Либо промежуточный сервер.
Вот только градиент как раз практически идеальный фон, т.к. имеет линейную зависимость изменения цвета. Тут никакого "нейро" и не надо. А вот фон цвета лица былоб ржачно.
Проблем с указателями нет, код был просто для примера.
Пока что решил остановиться на миксинах, но очень не хотелось трогать существующие классы.
Тогда дополнение к вопросу, почему тогда
decltype(*this) s();
Создаёт нужный класс MyClass, а не BaseClassOfMyClass ?
Я пытался вкурить про decltype но так и не понял какие именно правила срабатывают в этих двух случаях.