Oui cela est possible, mais avec quelques restrictions.
Comme AutoIt n'est pas vraiment multitache, une fois votre code lancé, celui-ci ne pourra s'arrêter qu'à la fin.
Je vais essayé de m'exprimer un peut mieux.
Si vous faites une fonction de ce genre :
Une fois ce code lancé, AutoIt va attendre 2 fois 5 secondes quoi qu'il arrive.
Si vous voulez pouvoir arrêter la fonction entre temps, vous pouvez insérer un contrôle entre les deux
Sleep pour voir si la touche à été relâchée ...
Après, selon ce que vous devez faire, rien ne vous empêche de créer un second exécutable contenant le code à exécuter que vous lancerez en récupérant son handle, ce qui vous permettra de faire une boucle de contrôle de l'état de la touche sans aucun blocage quelconque et le moment venu, grâce au handle vous arrêtez le processus du second exécutable (ce qui reviendrait à faire du 'vrais multitache')