Free time activities

What do you do in your free/leisure time?

You will be able to

  1. Talk about your hobbies
  2. How often you do them
  3. Why do you like them

✨to tick all the boxes = to meet all the requirements

Different types of free time activities

✨leisure activities = hobbies = pastimes

Indoor activities

  • Playing games
  • Reading
  • Watching tv/films
  • Chilling out/hanging out with friends

Outdoor activities

  • Sports:plyaing football、skiing、swimming、jogging
  • Gardening
  • Travelling
  • Going shopping

Collecting things

  • stamps
  • coins
  • NFTs = Non-fungible token(a unique digital item)

✨all the range = very fashionable

Creative activities

  • Playing a musical instrument
  • Painting
  • Knitting
  • Taking photographs

What you do in your free time?

✨I get up to a lot of different things.

  • to get up to = to do an activity

✨I like to do yoga = I like doing yoga.

  • I like doing sth = I like to do sth = I enjoy sth.
  • I like to do sth = It’s a choice or habit. For example, I like to do yoga on Thursdays.

I’m fond of playing video games = I’m into playing video games = I’m passionate about playing video games.

  • I’m fond of doing = I’m into doing sth = I’m passionate about doing sth.

✨I like to dabble in cooking.

  • dabble in = do sth casually, less seriously.

✨I play the guitar for fun = I play the guitar, but I am just an amateur.

  • for fun = amateur

Adverbs to talk about your hobby

How often do you do it?

  • I often paint.
  • I regularly paint.
  • I frequently paint.

✨I paint whenever I can = I paint as often as I can = I paint whenever I get a chance.

  • whenever I can = as often as I can = whenever I get a chance

✨I don’t paint as much as I would like = I don’t get round to painting as much as I would like.

  • do sth = get round to doing sth

Use different tenses

Present simple

✨I paint = I recently take up painting.

  • to take up a hobby = to start a hobby

Past simple

✨I started painting a couple of years ago = I decided to have a go at painting.

  • to have a go at something = to try something new.

✨I decided to try my hand at painting.

  • to try my hand at something = to try something new

Present perfect continuous

✨I’ve have been playing football for as long as I can remember.

✨I’ve been painting for donkey’s years = I’ve haven been painting for a long time.

  • for donkey’s years = for a long time

Conclusion

I often paint. I decided to have a go at painting because my daughter was taking classes, yeah, so, I’ve been painting for about two years now.

The benefits of hobbies

  • to relax
  • to stay healthy
  • to socialise

It (just) helps me

  • unwind
  • kick back
  • chill out

I find that it helps me

  • get into shape
  • keep fit
  • stay in shape

It allows me to (just)

  • hang out with friends
  • meet up with friends
  • chill out with friends

It’s quite a nice way to

  • socialise
  • get close to nature

✨It has a calming effect = It’s really therapeutic = It’s a great stress buster.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
The Sleeping Teaching Assistant A university computer science department has a teaching assistant (TA) who helps undergraduate students with their programming assignments during regular office hours. The TA’s office is rather small and has room for only one desk with a chair and computer. There are three chairs in the hallway outside the office where students can sit and wait if the TA is currently helping another student. When there are no students who need help during office hours, the TA sits at the desk and takes a nap. If a student arrives during office hours and finds the TA sleeping, the student must awaken the TA to ask for help. If a student arrives and finds the TA currently helping another student, the student sits on one of the chairs in the hallway and waits. If no chairs are available, the student will come back at a later time. Using POSIX threads, mutex locks, and/or semaphores, implement a solution that coordinates the activities of the TA and the students. Details for this assignment are provided below. Using Pthreads, begin by creating N students. Each will run as a separate thread. The TA will run as a separate thread as well. Student threads will alternate between programming for a period of time and seeking help from the TA. If the TA is available, they will obtain help. Otherwise, they will either sit in a chair in the hallway or, if no chairs are available, will resume programming and will seek help at a later time. If a student arrives and notices that the TA is sleeping, the student must notify the TA using a semaphore. When the TA finishes helping a student, the TA must check to see if there are students waiting for help in the hallway. If so, the TA must help each of these students in turn. If no students are present, the TA may return to napping. Perhaps the best option for simulating students programming—as well as the TA providing help to a student—is to have the appropriate threads sleep for a random period of time using the sleep() API:
06-04
This is a programming assignment that requires the use of POSIX threads, mutex locks, and/or semaphores to coordinate the activities of the TA and the students. Here is one possible solution: 1. Create a mutex lock and two semaphores: one for the TA and one for the students waiting in the hallway. 2. Create N student threads and one TA thread. 3. Each student thread should loop indefinitely, alternating between programming and seeking help from the TA. 4. When a student needs help, they should try to acquire the mutex lock. If the TA is sleeping, the student should signal the TA semaphore and wait on the student semaphore. If the TA is helping another student, the student should wait on the student semaphore. 5. When the TA wakes up, they should try to acquire the mutex lock. If there are students waiting in the hallway, the TA should signal the student semaphore N times to wake up the students. The TA should then help each student in turn, releasing the mutex lock after each one is helped. 6. If there are no students waiting, the TA should release the mutex lock and go back to sleep. Here is some sample code to implement this solution: ``` #include <pthread.h> #include <semaphore.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> #define N 10 // number of students #define CHAIRS 3 // number of chairs in hallway pthread_t students[N], ta; pthread_mutex_t mutex; sem_t student_sem, ta_sem; int waiting = 0; void *student(void *arg) { int id = *(int*)arg; while (1) { // program for a random amount of time sleep(rand() % 10 + 1); printf("Student %d needs help\n", id); pthread_mutex_lock(&mutex); if (waiting < CHAIRS) { // there is a free chair in the hallway waiting++; printf("Student %d waiting in hallway (%d/%d)\n", id, waiting, CHAIRS); pthread_mutex_unlock(&mutex); sem_wait(&student_sem); waiting--; } else { // no free chairs in the hallway printf("Student %d will come back later\n", id); pthread_mutex_unlock(&mutex); } // get help from TA printf("Student %d getting help from TA\n", id); // help for a random amount of time sleep(rand() % 5 + 1); } } void *ta_helper(void *arg) { while (1) { // sleep until a student wakes us up sem_wait(&ta_sem); while (1) { pthread_mutex_lock(&mutex); if (waiting == 0) { // no students waiting, go back to sleep pthread_mutex_unlock(&mutex); break; } // help the next student in line waiting--; sem_post(&student_sem); printf("TA helping a student (%d/%d)\n", waiting, CHAIRS); pthread_mutex_unlock(&mutex); // help for a random amount of time sleep(rand() % 5 + 1); } } } int main() { // initialize mutex lock and semaphores pthread_mutex_init(&mutex, NULL); sem_init(&student_sem, 0, 0); sem_init(&ta_sem, 0, 0); // create student threads int student_ids[N]; for (int i = 0; i < N; i++) { student_ids[i] = i; pthread_create(&students[i], NULL, student, &student_ids[i]); } // create TA thread pthread_create(&ta, NULL, ta_helper, NULL); // wait for threads to finish for (int i = 0; i < N; i++) { pthread_join(students[i], NULL); } pthread_join(ta, NULL); // clean up mutex lock and semaphores pthread_mutex_destroy(&mutex); sem_destroy(&student_sem); sem_destroy(&ta_sem); return 0; } ``` Note that this is just one possible solution and there may be other ways to implement the same behavior using different synchronization primitives.

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ReadThroughLife

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值