一些背景:
我有一个使用pthreads多线程的c ++程序.该计划是一个酒店预订系统,有10位客人(每个人都有自己的主题),一个登记台(1个主题)和一个退房服务台(1个主题).酒店只有5间客房可供客人入住.我正在使用信号量在此计划中强制执行互斥和事件订购.
题:
这是我的代码(只是需要的部分......)
sem_init(&openRooms, 0, 5);
sem_wait(&openRooms); //waits for there to be an open room at the hotel
cout << "Guest " << guestNumber << " waits for check-in." << endl;
sem_wait(&checkInLine); //waits for an open spot at the check-in desk
Run Code Online (Sandbox Code Playgroud)
有5位客人可以同时入住酒店,因为这里有5间客房.当我运行程序时,我得到输出(或类似......)
Guest Guest Guest Guest 24 waits for check-in. waits for check-in.1 waits for check-in.
3 waits for check-in.
Run Code Online (Sandbox Code Playgroud)
似乎cout允许同时运行多个打印,这就是"Guest"连续多次打印的原因.
我试过用printf做这个,同样的问题不会发生.在另一个线程可以打印语句之前打印整个语句.
sem_wait(&checkInSt); //Only one person at check in receptionist at a time
printf("Guest %ld goes to the …Run Code Online (Sandbox Code Playgroud) 因此,我有一个文本文件,其中包含以下格式的信息,包括姓名、电子邮件和电话号码。
Bill Molan, Bill.Molan@gmail.com, 612-789-7538
Greg Hanson, Greg.Hanson@gmail.com, 651-368-4558
Zoe Hall, Zoe.Hall@gmail.com, 952-778-4322
Henry Sinn, Henry.Sinn@gmail.com, 651-788-9634
Brittany Hudson, Brittany.Hudson@gmail.com, 612-756-4486
Run Code Online (Sandbox Code Playgroud)
当我的程序启动时,我想读取这个文件并将每一行放入一个新的 Person() 中,我最终会将其添加到列表中。我想读取每一行,然后使用逗号分隔每个字符串以放入 Person() 的构造函数中,这是一个基本类:
public PersonEntry(string n, string e, string p)
{
Name = n;
Email = e;
Phone = p;
}
Run Code Online (Sandbox Code Playgroud)
我做了一些查找,我认为使用流阅读器将有助于读取文本文件,但我不太确定从这里到哪里去。
我有一个在线测验我想完成这个问题:
以下之一无法存储在NSDictionary中.它无法存储,因为它是_____类型:
UIView NSNumber NSInteger UIColor
填写空白.
我似乎无法在网上找到答案.据我所知,他们都有办法存储在NSDictionary,任何想法?
c# ×1
c++ ×1
cout ×1
file-io ×1
nsdictionary ×1
objective-c ×1
printf ×1
semaphore ×1
separator ×1