Неясно, чего именно вы здесь добиваетесь.
Согласно вашему коду, file1 будет объектом FileStream. Вы разделяете этот единственный поток в нескольких адресных пространствах вашего процесса. Это первый недостаток.
Когда ваша функция пытается выполнить мультиобработанную функцию, поток файлов не становится общим. Более того, ссылка на file1 FileStream НЕ уничтожена, и, следовательно, вы можете получить доступ к файлу, но не можете писать в него.
Кроме того, почему вы открываете в режиме 'W +'? Есть ли какая-либо явная причина для усечения файла?
Чтобы решить эту проблему, вы должны открыть поток файлов внутри функции, выполняющей порождение процессов:
def worker():
print "iam called"
with open(files.txt",'w+'):
file1.write("hello 123")