;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Saúde

Sintomas, prevenção e tratamentos para uma vida melhor


Nem cafeína, nem alimentação: álcool é gatilho para arritmia, diz estudo

iStock
Imagem: iStock

Do VivaBem, em São Paulo

29/11/2021 15h56

Uma pesquisa da Universidade de São Francisco, na Califórnia, mostrou que apenas a ingestão de bebida alcoólica —e não a ingestão de cafeína, nem dormir do lado esquerdo ou não dormir bem— pode comprovadamente ser associada aos episódios de arritmia cardíaca.

O estudo, publicado no periódico JAMA Cardiology, foi apresentado no encontro anual da American Heart Assoaciation (AHA). O resultado levou os autores a concluir que indivíduos podem reduzir seu risco de fibrilação atrial (FA) ao evitar alguns gatilhos.

Como o estudo foi feito?

Os cerca de 450 participantes do ensaio clínica randomizado usaram um aparelho de eletrocardiograma portátil junto com um aplicativo de telefone para marcar potenciais gatilhos como bebida alcoólica e cafeína, dormir do lado esquerdo do corpo ou não dormir bem, comer uma refeição muito grande, praticar alguma atividade física ou qualquer atividades que eles acreditassem ser relevante.

O resultado é que, embora a ingestão de cafeína tenha sido o item mais comumente marcado como gatilho para a arritmia, não foram encontradas evidências científicas dessa relação.

Por outro lado, a ingestão de bebida alcoólica mostrou-se como causa mais provável de aumentar o risco de fibrilação atrial.

Os pesquisadores ficaram surpresos, no entanto, ao notarem que, embora alguns gatilhos apontados não apresentassem qualquer relação com o problema, o grupo monitorado apresentou menos episódios de arritmia do que as pessoas no grupo de controle —dando a entender que apenas a necessidade de se autoavaliar já provocou mudanças significativas na rotina que conseguiram inibir o problema.

Por que isso é importante?

O estudo vai ajudar os cientistas a entenderem melhor os gatilhos da fibrilação atrial. Mostrou, também, que o único gatilho com evidências de que provoque o problema é o consumo de bebida alcoólica.

Além disso, os pesquisadores ficaram animados com a forma como o estudo foi feito, de forma remota e por meio de um aplicativo, e apostam que esse novo formato irá ajudar em outros estudos que trarão informações clínicas relevantes sobre como os indivíduos lidam com suas condições de saúde.