messages will always be processed immediately when they become visible in SQS, is that correct?
Immediately is a strong word, but for simplicity, I would say yes.
If a client has started the polling and a message got in the queue, sqs will send response back to client with this message.
pollTimeoutSeconds
will not affect response time.
If a message is available, the call returns sooner than pollTimeoutSeconds
pollTimeoutSeconds
is a same thing as WaitTimeSeconds
parameter from ReceiveMessage
https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html