Como o multicol se divide?

Como o multicol se divide?

A princípio pensei que iria dividir pela metade do número de linhas. Então escrevi um código onde o número de linhas da primeira parte era maior que o da segunda parte e foi dividido exatamente onde eu queria. Sorte minha? Eu não acho. Como são as multicoldivisões?

Aqui está o código que eu tinha:

 \documentclass{article}
\usepackage{multicol}
\def\tab{\mbox{\quad}}
\begin{document}
\begin{multicols}{2}
\noindent
READER::\\
$P(mutex_3);$\\
$P(r);$\\
$P(mutex_1);$\\
$readcount++;$\\
if(readcount == 1)\\
\tab P(w);\\
$V(mutex_1);$\\
$V(r);$\\
$V(mutex_3);$\\
read the content of object\\
$P(mutex_1);$\\
$readcount--;$\\
if(readcount == 0)\\
\tab V(w);\\
$V(mutex_1);$\\
WRITER::\\
$P(mutex_2);$\\
writecount++;\\
if(writecount == 1)\\
\tab P(r);\\
$V(mutex_2);$\\
P(w);\\
writing object\\
V(w);\\
$P(mutex_2);$\\
writecount--;\\
if(writecount == 0)\\
\tab V(r);\\
$V(mutex_2);$
\end{multicols}
\end{document}

e eu queria ser separado nas seções READERe WRITERe foi exatamente assim que foi feito. Por que?

Responder1

multicolestá balanceando as linhas mas como sempre acontece se \\for mal utilizado no final do parágrafo, o TeX faz uma linha "toda branca" e reclama no log:

Underfull \hbox (badness 10000) in paragraph at lines 6--37

Então quando multicolequilibra as colunas a primeira coluna só temumlinha a mais que a segunda, a última linha da segunda coluna é toda branca.

Se você excluir o final \\antes do \end{multicols}aviso no log, mas agora as colunas estão balanceadas como

insira a descrição da imagem aqui

Nota não relacionada a este itálico matemático nunca deve ser usada para palavras com várias letras, a fonte tem laterais largas para fazer com que as letras adjacentes pareçam um produto de variáveis ​​enãouma palavra. Então

$readcount--;$\\

deveria estar

$\mathit{readcount}{-}{-};$\\

Embora você pareça estar variando entre o modo matemático e o modo texto ?? por que é

 if(readcount == 1)

não é matemática? Da mesma forma, por que é writecount--definido no modo de texto (onde --está uma ligadura para um n-traço), mas readcountdefinido no modo matemático com dois sinais de menos?

informação relacionada